4

在我的应用程序中,我有许多不时执行的 ajax 请求。我有一个以 settimeout 执行的另一个是与用户交互。我的问题是用户交互部分。

该场景是当用户设置参数并单击它执行ajax请求的按钮时。如果他的参数出错,用户将调整一些东西,然后再次执行 ajax 请求,之前的请求仍在进行中。

我想在不使用 abortall() 的情况下中止先前的请求,因为就像我之前所说的,还有其他不应中断的请求。所以它就像选择一个中止的请求。我怎么做?请帮忙。

4

1 回答 1

3

Ext.Ajax上有一个属性 autoAbort : Boolean

新请求是否应中止任何待处理的请求。

默认为:假

可用时间:1.1.0

将此道具设置true为用户发送的 Ajax,因此它不会干扰setIntervalajax。此外,请确保您有客户端和服务器端验证,这样可以避免错误的参数。在客户端解决错误的参数比让用户提交虚假数据更快、更便宜且对用户友好!

Ext.Ajax.request({
    url: '/echo/json/',
    params: {
        id: 1
    },
    autoAbort : true, 
    success: function(response){        
          //do something
    },
    failure:function(response){
         //do something
    }
});

这是小提琴的例子!

于 2013-07-11T12:58:28.417 回答