ASP.NET 中 取得 Repeater 里的checkbox值

 

前言:这两天在维护ASP.NET的项目,需要做一个checkbox来选择数据进行导出,下面提供两种解决思路

1、ASP:CheckBox

  asp:CheckBox自带控件,没有Value值

  

 "server" ID="Repeater1">
       
              
                   
                       <%#Eval("borrow_user_name")%>
                    
                    
                       <%#Eval("borrow_book_name")%>
                    
                    
                        <%#Eval("borrow_begin_date")%>
                    
                    
                         <%#Eval("borrow_state").ToString() == "0" ? "未归还" : "已归还"%>
                            <%--隐藏域传值--%>
                            "HiddenField1" Value='<%#Eval("borrow_id")%>' runat="server" />
                            "CheckBox3" runat="server" />
                    
             
      
  protected void btnExport_Click(object sender, EventArgs e)
    {
 
        CheckBox checkbox = new CheckBox();                 //创建对象
        HiddenField id;                                     //创建对象
        for (int i = 0; i < Repeater1.Items.Count; i++)
        {
            checkbox = (CheckBox)Repeater1.Items[i].FindControl("CheckBox3");//取对象
            id = (HiddenField)Repeater1.Items[i].FindControl("HiddenField1");//取对象
            if (checkbox.Checked == true)                   //是否被选中
            {
                int borrowId = int.Parse(id.Value.ToString());  //赋值
            }
        }

 

 

 

2、 CheckBox 

  html 的 CheckBox 能赋值给Value

  

"listBoxMain">             "table1">                                                                                                                                 "Repeater1" runat="server">                                                                                                                                                                                                                                    
"td4" class="td44">                         选中                     "td1">                         借阅人                     "td2">                         书籍名                     "td3">                         开始时间                    
class="td44">                                 <%--关键是id 和 runat="server" --%>                                 "checkbox" id="che" runat="server" value='<%#Eval("borrow_id")%>' class="che2" />                                                             <%#Eval("borrow_book_name")%>                                                             <%#Eval("borrow_begin_date")%>                                                             <%#Eval("borrow_user_name")%>                            
 
protected void btnExport_Click(object sender, EventArgs e)
    {
        //创建 html 的对象
        HtmlInputCheckBox che = new HtmlInputCheckBox();
        for (int i = 0; i < Repeater1.Items.Count; i++)
        {
            che = (HtmlInputCheckBox)Repeater1.Items[i].FindControl("che");
            if (che.Checked == true)                   //是否被选中
            {
                string j = che.Value;                   //赋值
                int borrowId = int.Parse(j);            //转换
            }
        }
    }

 

你可能感兴趣的:(ASP.NET 中 取得 Repeater 里的checkbox值)