2016-03-03 96 views
2

如何選擇數據()值作爲所有選定輸入的數組?下面顯示了我的非工作嘗試。如果第一個和最後一個輸入被檢查,我想data["extra1","extra3"]選擇數據()值作爲所有選定輸入的數組

https://jsfiddle.net/4mmm6azt/

$('#go').click(function() { 
    var data = $('#mytable tbody input:checked').data('extra').serializeArray(); 
    console.log('data', data); 
}); 

<table id='mytable'> 
    <tbody> 
    <tr><td><input type="checkbox" value="1" data-extra="extra1" name="id[]"></td></tr> 
    <tr><td><input type="checkbox" value="2" data-extra="extra2" name="id[]"></td></tr> 
    <tr><td><input type="checkbox" value="3" data-extra="extra3" name="id[]"></td></tr> 
    </tbody> 
</table> 

回答

4

嘗試這種情況下使用jQuery.map()

$('#go').click(function() { 
    var data = $('#mytable tbody input:checked').map(function(){ 
    return $(this).data("extra"); 
    }).get(); 
    console.log('data', data); 
}); 
+1

完美。我從來沒有使用過'map()'。有關工作示例,請參閱https://jsfiddle.net/4mmm6azt/1/。 – user1032531

+0

@ user1032531很高興幫助! :) –