【问题标题】:Validating a CheckBox field - ASP.NET and jQuery验证 CheckBox 字段 - ASP.NET 和 jQuery
【发布时间】:2012-11-26 23:53:15
【问题描述】:

我正在尝试做一个简单的验证 通过检查 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 = 假; ?现在它显示消息和 在这两种情况下运行该方法。

这一定是我需要的一个简单的东西.. 最好的问候。

【问题讨论】:

  • 新代码有进展吗?

标签: javascript jquery asp.net checkbox


【解决方案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 ;
    }

}

【讨论】:

  • 嗨,我正在尝试您的代码,但它仍然运行我的服务器端点击处理程序:受保护的 Sub BtnConfirm_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnConfirm.Click '运行的代码结束子
  • 请确保您编写了对函数的正确调用( OnClientClick="return ValidateConditions(this,event);
【解决方案2】:

试试:

OnClientClick="return ValidateConditions(this);"

function ValidateConditions(checkbox) {
    return $(checkbox).is(':checked');
}

【讨论】:

  • 您好,感谢您的回复。我正在尝试您的解决方案。当我单击按钮时,无论复选框被选中还是未选中,都没有发生任何事情。但至少它不会在后面运行我的代码。
【解决方案3】:

删除所有其他 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;}" />  

【讨论】:

  • 您好,感谢您的回复。我正在尝试您的解决方案,但在这种情况下,它在两种情况下都显示“不,它没有被检查”,并且它继续运行后面的代码。
  • 嗨,不,它只是显示消息,然后运行我的按钮单击处理程序: Protected Sub BtnConfirm_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnConfirm.Click '运行代码结束子
  • 很简单:
  • 嗨,它仍在运行代码。我在这里做了一个小例子供下载:dl.dropbox.com/u/17202645/test.aspx.zip
  • 现在我的方法只在勾选复选框时运行!好的。现在我只需要在未选中的情况下显示警报。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-12-06
  • 1970-01-01
  • 2014-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-04
相关资源
最近更新 更多