【问题标题】:Find the status of Checkbox in Grdiview with paging通过分页查找 Gridview 中 Checkbox 的状态
【发布时间】:2010-12-26 09:41:08
【问题描述】:

这是我用来查找是否在 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 ;

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

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

【问题讨论】:

    标签: jquery gridview checkbox paging


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

      这是因为在显示第二页时,第一页中的复选框没有呈现。

      在执行关键操作(例如删除记录)时,最好让用户知道正在删除哪些记录。

      您的方法的问题是,如果用户在另一个页面中,他将无法找到被选中执行操作的记录。所以在我看来,它不会是一个很好的可用性功能。

      【讨论】:

      • 即使我在同一条船上旅行,也说这种方法不是一个好功能,但客户却以自己的方式行事!因此,请注意实现这一点!
      【解决方案3】:

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

      【讨论】:

        【解决方案4】:

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

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

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-10-03
          • 1970-01-01
          • 2013-12-29
          • 1970-01-01
          • 1970-01-01
          • 2016-05-17
          相关资源
          最近更新 更多