我在CheckBox-es
中有5个CheckBoxList
,并且检查了最后一个,但是它没有返回正确的值。
样本Checkbox-es
:
02569-已选中
控件:
<asp:CheckBoxList CssClass="form-control checkbox" ID="chkTest" runat="server" OnSelectedIndexChanged="chkTest_SelectedIndexChanged" AutoPostBack="true">
后面的代码:
Protected Sub chkTest_SelectedIndexChanged(sender As Object, e As EventArgs)
For i = 0 To chkTest.Items.Count - 1 Step 1
If chkTest.Items(i).Selected Then
list.Add(chkTest.Items(i).Value) 'Here when when the i=4, the checkbox value is still set to 6 or a random number
End If
ViewState("list") = list
End Sub
您提供的代码不会在任何地方清除list
,因此它将包含所有先前的选择。
如果在clear()
上调用list
(假设它是list(of integer)
,则应该看到您选择的值。
Protected Sub chkTest_SelectedIndexChanged(sender As Object, e As EventArgs)
list.clear()
For i = 0 To chkTest.Items.Count - 1
If chkTest.Items(i).Selected Then
list.Add(chkTest.Items(i).Value)
End If
Next
ViewState("list") = list
End Sub