简体   繁体   English

在asp.net中客户端单击事件返回true之后,服务器单击事件未触发

[英]Server Click event is not firing after client click event return true in asp.net

I am creating a website and use a popup for exporting grid data to excel sheet but I have trouble I have created a javascript method and call it on client click of asp.net here is my function 我正在创建一个网站,并使用弹出窗口将网格数据导出到Excel工作表,但是我遇到了麻烦,我创建了一个javascript方法,并在客户端单击asp.net时调用它,这是我的功能

<script>
    function change() {

        $.ajax({
            type: "POST",
            contentType: "application/json; charset=utf-8",
            url: "Store/ViewStock.aspx/CountStock",
            data: "{'fromDate':'" + $('#<%= txtFromDate.ClientID%>').val() + "', 'ToDate':'" + $('#<%= txtToDate.ClientID%>').val() + "'}",
            dataType: "json",
            success: function (data) {
                if (data.d != null)
                    var count = data.d[0].Count;
                if (count > 0) {
                    $('#emptyDataRow').hide();
                    return true;
                }
                else {
                    $('#emptyDataRow').show();
                    return false;
                }
            },
        });
    }

</script>

And

Here is my button 这是我的按钮

Close

I have used OnClientClick="return (!change()){ return false;}" but its server click not working when its true Help me how to tackle this issue?? 我已经使用过OnClientClick="return (!change()){ return false;}"但服务器服务器单击为true时不起作用。帮助我如何解决此问题? Thanks 谢谢

$.ajax is an asynchronous function. $ .ajax是一个异步函数。 So those return calls wont work. 因此,这些回电将无法进行。

Why are you concerned with the return of the change function? 您为什么要关注change功能的返回? You can just do: 您可以这样做:

onclientclick="change()"

Also as a side note, I think it's better to define your variables outside of an if statement, so they are not undefined downstream: 另外请注意,我认为最好在if语句之外定义变量,因此在下游也不是未定义变量:

var count = 0;
if (data.d != null)
  count = data.d[0].Count;
if (count > 0) {
  $('#emptyDataRow').hide();
}
else {
  $('#emptyDataRow').show();
}

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

相关问题 asp.net javascript .click()事件未在服务器上触发 - asp.net javascript .click() event not firing on server LinkBut​​ton 单击事件未触发 asp.net - LinkButton click event not firing asp.net ASP.NET按钮单击事件未触发 - An ASP.NET button click event is not firing ASP.NET在更改文本框,触发客户端事件和服务器事件后单击按钮 - ASP.NET clicking on button after changing textbox, firing client event and server event 如何在asp.net中的客户端单击事件上调用2个javascript - how to call 2 javascript on client click event in asp.net 添加jQuery click事件后,使用asp.net mvc进行的客户端验证停止工作 - Client side validation with asp.net mvc stopped working after I added a jQuery click event jQuery:单击后不触发事件 - jQuery: Not firing event after click 在Bookmarklet中触发点击事件最终在Asp.Net引发Null Reference异常的地方结束 - Firing click event in Bookmarklet ends up where Asp.Net throwing Null Reference exception 验证失败时停止触发asp.net btnsave.click事件 - stop asp.net btnsave.click event from firing when validation fails 弹出窗口中放置的Web用户控件的按钮单击事件未触发-Asp.net Webforms - Button Click Event of Web User Control that is placed inside a popup not firing - Asp.net Webforms
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM