我正在尝试获取所有当前被选中的复选框的值,并将它们存储到一个数组中。 这是我目前的代码:
$("#merge_button").click(function(event){
event.preventDefault();
var searchIDs = $("#find-table input:checkbox:checked").map(function(){
return $(this).val();
});
console.log(searchIDs);
});
然而,这将输出比我需要的更多的内容。我不仅得到了数值,还有一些其他我不想要的东西。["51729b62c9f2673e4c000004", "517299e7c9f26782a7000003", "51729975c9f267f3b5000002", prevObject: jQuery.fn.jQuery.init[3], context: document, jquery: "1.9.1", constructor: function, init: function…]
我只想要ID(在本例中为前3个项目)。
通过使用
$.each 并将值推送到数组中,我可以获得所需的输出:$("#find-table input:checkbox:checked").each(function(){ myArray.push($(this).val()); })
["51729b62c9f2673e4c000004", "517299e7c9f26782a7000003",
"51729975c9f267f3b5000002"]
但我想使用$.map
,因为它可以节省一行代码并且更漂亮。
谢谢
$.map
得到一个真正的数组。感谢您提供的解决方案,它有效了。 - if __name__ is None.get()
,当函数从 jQuery 集合中返回.val()
的时候。这是因为map
在将其传递给searchIDs
之前将其转换回 jQuery 对象吗? - iconoclast