繁体   English   中英

OnClientClick阻止OnClick事件?

[英]OnClientClick preventing OnClick event?

我有一个按钮,我需要触发一个onclick事件和一个onclientclick事件。 onclientclick将是这样的:

(function($){
$.fn.validate = function()  {
    var option = $('#<%=LblWarnings.ClientID%>').html();   
        if (option == "option1_OK" ||
            option == "option1_OK")  
            alert(wrong);
        else {
            $('#<%=LblWarnings.ClientID%>').html("Incomplete");
            alert(wrong);}        
    };
})(jQuery);

验证函数,检查标签的文本,如果条件为真,它应该继续并执行OnClick事件。 如果它是假的,它不应该消除后面的代码(我的.cs文件中称为WriteInfo的方法,但只是更新标签,以便用户在提交数据时知道出错了。

onclientclick是否可以停止onclick事件? 如果是这样,你能帮我提供asp:button句子,这样我就能触发这两个事件。

谢谢。

在尝试Adil Answer后,我收到错误“对象预期”

也许我调用函数的方式有问题?

<asp:Button ID="ButtonRadioValue" CssClass="customButton" runat="server" onclick="WriteInfo" OnClientClick="validate();" Text="Accept" />

您可以使用stopPropagation()方法来停止返回false的回发。

使用stopPropagation();

 (function($){
    $.fn.validate = function(event)  {
        var option = $('#<%=LblWarnings.ClientID%>').html();   
            if (option == "option1_OK" ||
                option == "option1_OK")  
                alert(wrong);
                event.stopPropagation();
            else {
                $('#<%=LblWarnings.ClientID%>').html("Incomplete");
                alert(wrong);}        
        };
    })(jQuery);

使用return false;

(function($){
$.fn.validate = function()  {
    var option = $('#<%=LblWarnings.ClientID%>').html();   
        if (option == "option1_OK" ||
            option == "option1_OK")  
            alert(wrong);
            return false;
        else {
            $('#<%=LblWarnings.ClientID%>').html("Incomplete");
            alert(wrong);}        
    };
})(jQuery);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM