使用分页查找Gridview中Checkbox的状态

时间:2009-12-14 11:35:07

标签: jquery gridview checkbox paging

这是我用来查找是否在gridview中选中任何复选框的代码

 if($("table tr td:first-child input:checkbox:checked").length ==0)
 {
     alert("Select atleast one event to delete");return false ;
 }

 if(confirm('Are you sure! you want to delete the selected events(s)?'))
     return true;
 else
     return false ;

我在第一页中选中一个复选框,然后我导航到第二页,然后单击“删除”,它会抛出“选择至少一个要删除的频道”。哪个不应该!

没有分页,它可以正常工作。有没有通过分页实现这一点的见解?

4 个答案:

答案 0 :(得分:0)

一旦导航到下一页,首先选中的复选框的DOM元素将不再显示,因此脚本将不会知道它们。

如果您希望通过页面保留复选框状态,则需要在页面更改时缓存状态。请记住,这些也不会在回发中传递。

答案 1 :(得分:0)

这是因为显示第二页时不会呈现第一页中的复选框。

在执行关键操作(例如删除用户知道哪些记录被删除的记录)时会更好。

您的方法存在的问题是,如果用户位于其他页面中,则无法找到选择执行操作的记录。所以在我看来它不是一个好的可用性功能。

答案 2 :(得分:0)

不是检查复选框选中的值,而是尝试将它们保存在会话或其他内容中,然后尝试循环遍历它们并检查这些值。可以将它们存储在某些数组中。以上用户是对的,当你没有在屏幕上呈现控件时,你会得到对象null错误。

答案 3 :(得分:0)

您可以在从一个页面移动到另一个页面的同时手动维护javascript中已选中复选框的状态。

在最终删除方法中,检查可用状态数据中的任何选中值。