【问题标题】:Conditional preventDefault ASP.Net button click有条件的 preventDefault ASP.Net 按钮单击
【发布时间】:2020-10-25 16:03:19
【问题描述】:

我试图阻止提交仅在满足条件的情况下。如果条件匹配,它会阻止提交并正常工作。但是如果条件不满足,它仍然会阻止提交。奇怪的是,再次单击按钮时它工作正常。我也尝试过显式回发,但没有运气。我确定我错过了一些小事,但无法弄清楚。

我的代码如下所示。

 $('#GetAvailability').click(function (e) {
                 

 var valRetPax = $("#hdnRetPax").val();

 var valSelPax = $("#ddlPaxNum").val();

 var existed = valRetPax != '0' && valRetPax != valSelPax;

 alert(existed);
 var btnBack = $(this);

 if(existed)
    e.preventDefault();
 else
    __doPostBack($(btnBack).attr('name'), '');

     // Some other code after preventing the click....
});

按钮定义如下。

<asp:Button Text="GO" runat="server" ID="GetAvailability" CssClass="btn btn-primary " OnClick="GetAvailability_Click" ClientIDMode="Static" />

请帮忙

【问题讨论】:

    标签: jquery asp.net postback


    【解决方案1】:

    为什么不在点击函数中简单地返回false。这就是你所需要的。

    $('#GetAvailability').click(function (e) {
    
        if (existed)
            return false;
    });
    

    【讨论】:

    • 谢谢...在阻止该事件后,我在下面还有一些其他逻辑。更新了问题以显示相同。
    • 顺便说一句,在我的逻辑步骤之后我也尝试了这个。还是同样的问题。当条件为真时它工作正常。它阻塞并且我的代码被执行等等。当它为假时,它第一次不起作用。当我第二次点击时它起作用了!
    猜你喜欢
    • 2019-02-01
    • 2011-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-14
    • 1970-01-01
    • 2010-10-21
    • 2011-12-02
    相关资源
    最近更新 更多