1

我试图通过检查 asp:checkbox 并单击 asp:button 对某些协议进行简单验证。

在我的按钮上,我称之为:

OnClientClick="ValidateConditions();"

该函数由此运行:

function ValidateConditions() {
 if ($('#ChkAccept').is(':checked')) {
             alert("Checked");
                  args.IsValid = true;
               }
                else {
                   alert('Nope it is not checked');
                args.IsValid = false;
           }
         }

到目前为止它有效,但是当 args.IsValid = false; 时如何停止运行我的按钮方法;? 现在它在两种情况下都显示消息并运行该方法。

这一定是我需要的一件简单的事情……最好的问候。

4

3 回答 3

1

执行以下操作以防止按钮事件:-- 但也要 OnClientClick="return ValidateConditions(this); 在您的标记代码中

 function ValidateConditions(element,e) {
    if ($(element).prop('checked')) {
        alert("Checked");
        args.IsValid = true;
    }
    else {
        alert('Nope it is not checked');
        args.IsValid = false;
e.preventDefault();
e.stopPropagation();
return false ;
    }

}
于 2012-11-26T10:54:33.207 回答
0

删除了所有其他 javascripts:

只需使用:

   <asp:CheckBox ID="ChkAccept" runat="server" ClientIDMode="Static" Text="I accept the conditions" /> 
    <br />
   <asp:Button ID="BtnConfirm" runat="server" CssClass="uniBtn" Text="Send"
   OnClientClick="if(! $( '#ChkAccept' ).prop( 'checked' )){alert('Not Ticked');return false;}" />  
于 2012-11-26T10:25:33.210 回答
0

尝试:

OnClientClick="return ValidateConditions(this);"

function ValidateConditions(checkbox) {
    return $(checkbox).is(':checked');
}
于 2012-11-26T10:31:36.240 回答