asp:DataGrid之添加asp:CheckBox做全选功能时涉及到绑值问题解决

Posted 轴轴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp:DataGrid之添加asp:CheckBox做全选功能时涉及到绑值问题解决相关的知识,希望对你有一定的参考价值。

最大的意图是为asp:CheckBox的value绑定上自己需要的value值,而不是默认的字符串"on"

参考了这篇文章带Value属性的扩展CheckBox控件,意义不大,换了种解决方案

jQuery风格的全选

$(function () {
    $("#allCheck").bind("click", function () {
          $("[name = $chkItem]:checkbox").attr("checked", $(this).attr("checked"));
    });
})

 

<asp:TemplateColumn>
  <HeaderTemplate>
     <asp:CheckBox ID="allCheck" runat="server"  ClientIDMode="Static"/>
  </HeaderTemplate>
  <ItemTemplate>
      <input type="checkbox" runat="server" id="chkItem"  value=\'<%# DataBinder.Eval(Container.DataItem,"Id")%>\' name="chkItem"/>
   </ItemTemplate>
</asp:TemplateColumn>

后台取值

string id = "";
System.Web.UI.htmlControls.HtmlInputCheckBox chkItem;
foreach (DataGridItem oDataGridItem in this.DbList.Items)
{
    chkItem = (HtmlInputCheckBox)oDataGridItem.FindControl("chkItem");
    if (chkItem.Checked == true)
    {
        id += chkItem.Value + ";";
    }
}
if (!string.IsNullOrEmpty(id))
{
     string[] idArray = id.Split(new Char[] { \';\' }, StringSplitOptions.RemoveEmptyEntries);
     ........

 

以上是关于asp:DataGrid之添加asp:CheckBox做全选功能时涉及到绑值问题解决的主要内容,如果未能解决你的问题,请参考以下文章

DataGrid添加滚动条

asp:异步的DataGrid可见性?

从 DataGrid 中删除重复的行

如何将 CssClass 应用于 DataGrid HyperLinkColumn 的标题单元格?

ASP.NET MVC 4 数据网格

asp.net 我可以在单击按钮后禁用数据网格排序操作吗?