这是我用来查找是否在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 ;
我在第一页中选中一个复选框,然后我导航到第二页,然后单击“删除”,它会抛出“选择至少一个要删除的频道”。哪个不应该!
没有分页,它可以正常工作。有没有通过分页实现这一点的见解?
答案 0 :(得分:0)
一旦导航到下一页,首先选中的复选框的DOM元素将不再显示,因此脚本将不会知道它们。
如果您希望通过页面保留复选框状态,则需要在页面更改时缓存状态。请记住,这些也不会在回发中传递。
答案 1 :(得分:0)
这是因为显示第二页时不会呈现第一页中的复选框。
在执行关键操作(例如删除用户知道哪些记录被删除的记录)时会更好。
您的方法存在的问题是,如果用户位于其他页面中,则无法找到选择执行操作的记录。所以在我看来它不是一个好的可用性功能。
答案 2 :(得分:0)
不是检查复选框选中的值,而是尝试将它们保存在会话或其他内容中,然后尝试循环遍历它们并检查这些值。可以将它们存储在某些数组中。以上用户是对的,当你没有在屏幕上呈现控件时,你会得到对象null错误。
答案 3 :(得分:0)
您可以在从一个页面移动到另一个页面的同时手动维护javascript中已选中复选框的状态。
在最终删除方法中,检查可用状态数据中的任何选中值。