Javascript 如何终止当前页面进程

Javascript 如何终止当前页面进程,javascript,asp.net,Javascript,Asp.net,我正在使用一个asp.net应用程序,其中我使用了母版页和内容页。 在其中一个内容页中,我加载了一个包含更多数据的网格,在母版页中,我使用“更新”面板显示带有“取消”按钮的进度条图像。 现在,当我在内容页上加载网格时,进度条显示为“取消”按钮。为了清除进度,我在javascript中编写了加载程序图像,隐藏在cancel click按钮上,效果很好 但我的进程仍在运行。如何单击“取消”按钮取消此进程。 以下是单击母版页按钮时触发的方法 private void ViewReports(字符串s

我正在使用一个asp.net应用程序,其中我使用了母版页和内容页。 在其中一个内容页中,我加载了一个包含更多数据的网格,在母版页中,我使用“更新”面板显示带有“取消”按钮的进度条图像。 现在,当我在内容页上加载网格时,进度条显示为“取消”按钮。为了清除进度,我在javascript中编写了加载程序图像,隐藏在cancel click按钮上,效果很好

但我的进程仍在运行。如何单击“取消”按钮取消此进程。 以下是单击母版页按钮时触发的方法

private void ViewReports(字符串someFilterCondition)
{
//从数据库获取数据的业务逻辑。

}
在该页面中将静态sql命令变量声明为全局变量(仅命令变量)。然后编写一个web方法并取消其中的命令。然后在单击cancel按钮时使用AJAX调用该web方法

//在页面顶部添加名称空间

using System.Web.Services;
//在该页中全局声明此变量

 static SqlCommand command = new SqlCommand();
//c#

//.aspx

<asp:Button ID="BtnCancel" runat="server" Text="Cancel" OnClientClick="BtnCancel_ClientClick(); return false;" />

希望它能帮助您。

业务逻辑需要更多的时间-sql查询似乎需要更多的时间来给出结果?是的,Kavin,这就是为什么我需要在这里单击“取消”按钮时,流程应该停止。请参见此。希望它能帮助你。这是好的,但我希望它是在点击取消按钮,关闭客户端加载图像从那里我必须这样做。我尝试从那里使用ajax调用,但它不起作用。如果您对此有一些解决方案,请帮助我。在该页面中将命令变量声明为全局变量。添加命令。取消();在一个函数中,当使用ajax单击cancel按钮时调用该函数。您好,Cavin,目前我正在使用另一个BA类,在这里我有调用存储过程的方法。此方法正在从asp.net页调用。现在我不知道如何将这个命令发送给已经运行的方法。我已经检查过ajax调用,然后知道有一个进程已经在运行以加载数据,直到它没有结束。这个ajax调用进程不仅仅是在启动。没有你的代码,没有你的代码,我可以帮上很多忙。我什么都做不了。。把你的密码贴出来,告诉我你在哪里偷吃。。顺便说一句,什么是BA?BA的意思是我有另一个类库,其中定义了业务逻辑,比如执行过程和返回数据。我有一个简单的问题,如果一个进程已经在运行,我们不能发送另一个进程,直到第一个进程没有完成。如果是这种情况,那么如何取消特定命令?是的,这是有意义的,但您可以使用线程或关联操作并行执行多个进程。我有使用控制台应用程序线程的经验,但没有使用asp.net web应用程序线程的经验。在asp.net web应用程序中,线程或同步是可能的,因此请对此进行研究并在此处共享您的结果。
<asp:Button ID="BtnCancel" runat="server" Text="Cancel" OnClientClick="BtnCancel_ClientClick(); return false;" />
function BtnCancel_ClientClick() {
    $.ajax({
        type: "POST",
        url: "HomePage.aspx/CancelProcess",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (data) {
        },
        failure: function (response) {
            //  add error handling code here                   
        }
    });
}