jQuery ±éÀú - map() ·½·¨
ʵÀý
¹¹½¨±íµ¥ÖÐËùÓÐÖµµÄÁÐ±í£º
$("p").append( $("input").map(function(){
return $(this).val();
}).get().join(", ") );
¶¨ÒåºÍÓ÷¨
map() °Ñÿ¸öÔªËØÍ¨¹ýº¯Êý´«µÝµ½µ±Ç°Æ¥Å伯ºÏÖУ¬Éú³É°üº¬·µ»ØÖµµÄÐ嵀 jQuery ¶ÔÏó¡£
Óï·¨
.map(callback(index,domElement))
| ²ÎÊý | ÃèÊö |
|---|---|
| callback(index,domElement) | ¶Ôµ±Ç°¼¯ºÏÖеÄÿ¸öÔªËØµ÷Óõĺ¯Êý¶ÔÏó¡£ |
Ïêϸ˵Ã÷
ÓÉÓÚ·µ»ØÖµÊÇ jQuery ·â×°µÄÊý×飬ʹÓà get() À´´¦Àí·µ»ØµÄ¶ÔÏóÒԵõ½»ù´¡µÄÊý×é¡£
.map() ·½·¨¶ÔÓÚ»ñµÃ»òÉèÖÃÔªËØ¼¯µÄÖµÌØ±ðÓÐÓá£Çë˼¿¼ÏÂÃæÕâ¸ö´øÓÐһϵÁи´Ñ¡¿òµÄ±íµ¥£º
<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>
ÎÒÃÇÄܹ»»ñµÃ¸´Ñ¡¿ò ID ×é³ÉµÄ¶ººÅ·Ö¸ôµÄÁÐ±í£º
$(':checkbox').map(function() {
return this.id;
}).get().join(',');
±¾´Îµ÷ÓõĽá¹ûÊÇ×Ö·û´®£º"two,four,six,eight"¡£
ÔÚ callback º¯ÊýÄÚ²¿£¬this ÒýÓÃÿ´Îµü´úµÄµ±Ç° DOM ÔªËØ¡£¸Ãº¯Êý¿É·µ»Øµ¥¶ÀµÄÊý¾ÝÏ»òÕßÊÇÒª±»²åÈë½á¹û¼¯ÖеÄÊý¾ÝÏîµÄÊý×é¡£Èç¹û·µ»ØµÄÊÇÊý×飬Êý×éÄÚµÄÔªËØ»á±»²åÈ뼯ºÏÖС£Èç¹ûº¯Êý·µ»Ø null »ò undefined£¬Ôò²»»á²åÈëÈκÎÔªËØ¡£