[Asp.net/Vb.Net] 如何使用Javascript驗證我的gridview頁腳複選框。我有一個GridView的頁腳有8個複選框 - (chkActive1,chkActive2,..... chkActive3) - 我想要jave的條件是 - 用戶需要檢查atleast 1複選框或否則trasaction不會允許[javascript]驗證Gridview頁腳複選框
感謝..
[Asp.net/Vb.Net] 如何使用Javascript驗證我的gridview頁腳複選框。我有一個GridView的頁腳有8個複選框 - (chkActive1,chkActive2,..... chkActive3) - 我想要jave的條件是 - 用戶需要檢查atleast 1複選框或否則trasaction不會允許[javascript]驗證Gridview頁腳複選框
感謝..
那麼簡單,每一個複選框,在查看源代碼的唯一ID檢查有一些專利的名稱對照,當您檢查網頁的viewsource,只是使用的是,它的簡單方法。
如果我誤解了你,那麼請糾正我,我認爲這可以通過在asp.net中使用自定義驗證器來完成 由於你沒有提到我假設你正在使用CheckBoxList控件。
在.aspx頁面中使用自定義的驗證
<asp:CustomValidator ID="customValidatorForCheckboxlist" runat="server"
ErrorMessage="Required Field" ValidationGroup="valSurvey"
OnServerValidate="CheckifCheckBoxIsEmpty" SetFocusOnError="true" Display="Dynamic"></asp:CustomValidator>
在codebhind使用這個邏輯,通過你的GridView行迭代,並檢查尾行。在頁腳行內循環遍歷所有複選框,然後查看它們是否被選中。我正在使用布爾字段來檢查是否選擇了任何內容。如果選擇了任何內容,跳出去。
Protected Sub CheckifCheckBoxIsEmpty(ByVal sender As Object, ByVal e As ServerValidateEventArgs)
Dim valbool As Boolean = False
For Each gvrow As GridViewRow In gridview_1.Rows
'Check for footer row.
If gvrow.RowType = DataControlRowType.Footer
For Each ct As Control In gvrow.Cells(1).Controls
If ct.GetType.ToString().Equals("System.Web.UI.WebControls.CheckBoxList") Then
Dim _checkboxlist As CheckBoxList = DirectCast(ct, CheckBoxList)
For Each ListItem1 As ListItem In _checkboxlist.Items
If ListItem1.Selected = True Then
valbool = True
Exit For
Else
valbool = False
End If
Next
End If
Next
End If
Next
If valbool = False Then
e.IsValid = False
Else
e.IsValid = True
End If
End Sub