在传统的MVC 5 Web应用程序中,我希望用户能够在单击按钮后继续浏览,该按钮对长时间运行的操作进行ajax调用.
(注意:操作返回void – 我对响应不感兴趣)
When I click the button I am unable to make any other requests until the action completes.
编辑:这是ajax代码:
$('#EmailReport') //
.click(function() {
$.ajax({
type: "POST",url: '/Home/EmailReport',complete: function() {console.log("done")},async: true
});
});
调节器
[HttpPost]
public async Task EmailReport()
{
// for testing - sleep for 10 seconds
await Task.Delay(TimeSpan.FromSeconds(10));
}
以下是Chrome开发工具中的屏幕截图:
EmailReport是ajax调用,底部的两个请求是我试图浏览到另一个页面 – 因为你可以看到第一个请求正在等待并且任何后续请求都被取消
最佳答案