<input type="checkbox" id="cbSelect1" name="cbSelect1" value='<%#Eval("emp_id")%>' runat="server" />For Each ri As RepeaterItem In Me.Repeater1.Items
            If DirectCast(ri.FindControl("cbSelect1"), CheckBox).Checked Then
                Me.Response.Write("<br/>" & DirectCast(ri.FindControl("cbSelect1"), HiddenField).Value)
            End If
        Next这样好像取不到
如何取得checkbox的value值?

解决方案 »

  1.   

    在C#中 
     Me.Response.Write(" <br/>" + ((CheckBox)ri.FindControl("cbSelect1")).Value) 
      

  2.   

     Dim chkSelect As CheckBox
            Dim lblProductID As Label
            For Each item As RepeaterItem In Repeater1.Items
                chkSelect = TryCast(item.FindControl("checkbox1"), CheckBox)
                If chkSelect IsNot Nothing AndAlso chkSelect.Checked Then
                    lblProductID = TryCast(item.FindControl("Label8"), Label)
                    Label6.Text = lblProductID.Text            End If
            Next
    取不了值
      

  3.   

    页面加载完成后 查看源代码 看要取的值是value="123" 还是 <>123<>
    或者你的"Label8"中还有其他标签元素 
      

  4.   

    vb不了解 你这个DirectCast(ri.FindControl("cbSelect1"), HiddenField),实现了类型转换吗?
      

  5.   

    <input type="checkbox" id="cbSelect1" name="cbSelect1" value=' <%#Eval("emp_id")%>' runat="server" /> 
      
     你是用这个绑定id  ,我觉得可以用html控件就可以
      <input type="checkbox" id="cbSelect1" name="cbSelect1" value=' <%#Eval("emp_id")%>'/> 
      提交的时候 ,直接用request["cbSelect1"]  就会取到 1,2,5 这样的一个值, 可以再转成split 转成数组了处理