【发布时间】:2016-09-21 09:31:34
【问题描述】:
我正在使用jquery datatable,为了检查所有元素(使用分页),使用以下代码:
$("[id$='checkAll']").on('click', function () {
var rows = table.rows().nodes();
$('input[type="checkbox"]', rows).attr('checked', $(this).is(':checked'));
});
所有元素都被检查了
但是当我尝试用这段代码取回所有这些元素时,问题出在后面的代码中
protected void testBtn_Click(object sender, EventArgs e)
{
int i = 0;
int j = 0;
List<string> list = new List<string>();
foreach (ListViewItem item in demandesExportPhytos.Items)
{
i++;
CheckBox checkbox = (CheckBox)item.FindControl("demandeCheckbox");
if (checkbox.Checked == true)
{
j++;
list.Add(item.ID);
}
}
Console.WriteLine(i);
Console.WriteLine(j);
Console.WriteLine(list.Count());
Console.WriteLine("///");
}
j= 15 和 i = 显示在界面上的元素数量(使用分页),因此它是 10 或 5,具体取决于所选页面 1 或 2,因为所有元素都已检查
【问题讨论】:
-
我认为问题是由于datable只保留当前页面的元素并删除其他元素,那么如何处理呢?
标签: jquery asp.net listview datatables datatables-1.10