这些是我的许多复选框,我需要在保存时抓取选定的复选框并创建一个将保存的数组/数字串。
<asp:CheckBox ID="4" runat="server" ClientIDMode="Static"/>
我是否需要添加一个带数字的值,以便我可以获得复选框的编号,这样我就可以获得类似“1,4,8,9”(选中复选框)的内容,或者我可以从ID中获取它?
我正在看这样的事情作为例子:
$(function(){
$('#btnClick').click(function(){
var val = [];
$(':checkbox:checked').each(function(i){
val[i] = $(this).val();
});
});
});
编辑:
有没有办法通过启动ID来获取复选框,而不是从页面中获取每一个?
答案 0 :(得分:3)
你可以在数组上使用.push
,如下所示:
val.push(this.id);
以下是一个示例:http://jsfiddle.net/dpMp2/3/
或
你可以这样做:
var val = $.makeArray($(':checkbox:checked'));
makeArray
上的信息可在此处找到:http://api.jquery.com/jQuery.makeArray/
note 如下所述am not i am
,数组将是对象,您必须从每个obj获取id或值。阅读文档了解更多信息。
答案 1 :(得分:0)
我会使用map
$(':checkbox:checked').map(function(){ return $(this).val(); })
答案 2 :(得分:0)
由于val是一个对象,因此您必须使用push
函数来分配数据。
$(function(){
$('#btnClick').click(function(){
var val = [];
$(':checkbox:checked').each(function(i){
val.push($(this).val());
});
});
});