GridView中的JQuery CheckAll

时间:2009-10-07 13:13:40

标签: jquery gridview checkbox

我在.ascx上有一个GridView。我在一个列的标题模板中有一个asp:Checkbox CheckAll复选框,然后在ItemTemplate中有一个复选框。我想添加这些功能,以便当我选中Header中的复选框时,它将检查或取消选中GridView中的所有复选框。

如何使用JQuery执行此操作?我还想添加反向功能,这样当我取消选中GridView中的一个复选框时,它会取消选中标题中的复选框。

2 个答案:

答案 0 :(得分:1)

您可以使用Checkbox'CheckAll'ID和行的类。

例如,您可以拥有一个控件ID“chkSelectAllNone”(请注意,这将在客户端中更改为“Ctl001_chkSelectAllNone”)并且您可以使用css类“select-row”分配行类。

然后,在aspx中创建一个jQuery脚本(或者从后面的代码中编写它)来处理切换Select All / None,就像这样:

$("#<%= chkSelectAllNone.ClientID %>").click(function(){
$(".select-row").attr("checked", $("#<%= chkSelectAllNone.ClientID %>").attr("checked"));
});

希望它有所帮助。

答案 1 :(得分:0)

我不确定GridViews是否呈现th,但如果他们这样做会让你关闭:

$("th :radio").click(function() {
  if($(this).is(":checked")) {
    $("td :radio").attr("checked", "checked");
  }
});

$("td :radio").click(function() {
  var attr = $("td :radio").not(":checked").length ? "" : "checked";
  $("th :radio").attr("checked", attr);
});