Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在ExtJS中中止Ajax请求_Javascript_Ajax_Extjs - Fatal编程技术网

Javascript 在ExtJS中中止Ajax请求

Javascript 在ExtJS中中止Ajax请求,javascript,ajax,extjs,Javascript,Ajax,Extjs,我一直在使用ExtJS6.0。我使用Ajax请求从应用服务器检索数据。在我当前的视图中,单击OK按钮,我通过向服务传递负载来进行Ajax调用。同时,我用“取消”按钮屏蔽屏幕。有时,服务需要时间来响应。用户可能想通过单击“取消”按钮重新定义其搜索,然后再次执行该操作。我曾经在屏蔽屏幕中单击“取消”时取消屏蔽屏幕,但Ajax并没有被中止。一旦服务响应,它就会加载旧数据。有什么方法可以停止/中止我以前的ajax请求吗?试试这个 var requestId = Ext.Ajax.request({...

我一直在使用ExtJS6.0。我使用Ajax请求从应用服务器检索数据。在我当前的视图中,单击OK按钮,我通过向服务传递负载来进行Ajax调用。同时,我用“取消”按钮屏蔽屏幕。有时,服务需要时间来响应。用户可能想通过单击“取消”按钮重新定义其搜索,然后再次执行该操作。我曾经在屏蔽屏幕中单击“取消”时取消屏蔽屏幕,但Ajax并没有被中止。一旦服务响应,它就会加载旧数据。有什么方法可以停止/中止我以前的ajax请求吗?

试试这个

var requestId = Ext.Ajax.request({...});

Ext.Ajax.abort(requestId);

或者干脆
requestId.abort()
。如果您需要通过文件上传取消表单提交,它会变得更加复杂。每当我在屏蔽屏幕中单击“取消”按钮时,我都必须通过ajax请求中止。有一个用于取消屏蔽屏幕的处理程序。但是,单击“取消”按钮时如何中止请求请注意,尽管您可以按此处所述中止请求,但服务器仍将处理该请求,并最终返回到不再侦听的客户端。如果这是一个问题,您可能也希望处理这个问题。