jQuery Gezinti - map() Metodu
Örnek
表单中所有值的列表构建:
$("p").append($("input").map(function(){} return $(this).val(); ).get().join(", ") );
Tanım ve Kullanım
map(), her bir elemanın fonksiyon aracılığıyla mevcut eşleşme kümesine geçirilmesini ve döndürdüğü değerlerle yeni bir jQuery nesnesi oluşturulmasını sağlar.
Sözdizimi
.map(callback(index,domElement))
Parametreler | Tanım |
---|---|
callback(index,domElement) | Mevcut kümedeki her bir öğeye çağrılan fonksiyon nesnesi. |
Ayrıntılı Açıklama
Dönüş değeri jQuery kaplı dizisi olduğundan, get() kullanılarak döndürülen nesneyi işlemek için temel diziyi elde etmek için kullanılır.
.map() metodu, element kümesinin değerlerini elde etmek veya ayarlamak için çok faydalıdır. Aşağıdaki bir dizi onay kutusuna sahip bir formu düşünün:
<form method="post" action=""> <fieldset> <div> <label for="two">2</label> <input type="checkbox" value="2" id="two" name="number[]"> </div> <div> <label for="four">4</label> <input type="checkbox" value="4" id="four" name="number[]"> </div> <div> <label for="six">6</label> <input type="checkbox" value="6" id="six" name="number[]"> </div> <div> <label for="eight">8</label> <input type="checkbox" value="8" id="eight" name="number[]"> </div> </fieldset> </form>
Köşeli parantezler ayrılmış çizgi ile ayrılmış onay kutusu ID'lerini içeren bir liste elde edebiliriz:
$(':checkbox').map(function() { return this.id; ).get().join(',');
Bu çağrının sonucu string: "two,four,six,eight".
callback fonksiyonu içersinde, this her seferinde döngüdeki mevcut DOM öğesine işaret eder. Bu fonksiyon, tek bir veri öğesi veya sonuç kümesine eklenmesi gereken veri öğelerinin dizisini döndürebilir. Dizi döndüyse, dizindeki öğeler kümeye eklenir. Fonksiyon null veya undefined döndürdüğünde, hiçbir öğe eklenmez.