2011-08-02 51 views
0

[Asp.net/Vb.Net] 如何使用Javascript验证我的gridview页脚复选框。我有一个GridView的页脚有8个复选框 - (chkActive1,chkActive2,..... chkActive3) - 我想要jave的条件是 - 用户需要检查atleast 1复选框或否则trasaction不会允许[javascript]验证Gridview页脚复选框

感谢..

回答

0

那么简单,每一个复选框,在查看源代码的唯一ID检查有一些专利的名称对照,当您检查网页的viewsource,只是使用的是,它的简单方法。

0

如果我误解了你,那么请纠正我,我认为这可以通过在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