javascript - 如何使用原型(prototype) js 库中止/取消请求?

标签 javascript ajax prototypejs

使用这段代码:

var pendingRequest =  new Ajax.Request(myUrl, {
               method: 'post',
               postBody: soapMsg,
               contentType: "text/xml",
               onSuccess: function(transport) {
                    doSomething(transport);
               },
               onFailure: function(t) {
                    OnAjaxFailure(t);
               },
               onException: function(req,exception) { 
                    OnAjaxException(req, exception);          
               } 

            }); 

我如何取消请求并丢弃数据,或者如果失败,我如何在我的 onSuccess 方法中识别请求(使用名称/guid/其他)以便我可以知道哪个请求正在完成?

我正在考虑做一个 array.push(pendingRequest) 来跟踪未决请求

我想允许用户中断他们的请求,更改输入值并重新提交。

有时原始请求在新请求之后结束,我正在用“旧”数据替换“正确”数据。 (例如,搜索结果在第一次查询时返回 50,000 条记录,在第二次查询中返回 5 条记录)

谢谢,

最佳答案

您可以使用 XHR 的 abort .

XHR 对象存储在 pendingRequest.transport 中,因此使用

pendingRequest.transport.abort()

将取消请求。

关于javascript - 如何使用原型(prototype) js 库中止/取消请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3161700/

相关文章:

javascript - 在动态创建的输入上使用向下箭头键将光标移动到下一个输入

javascript - 从外部文件调用外部 JS 函数

javascript - 使用 javascript 更改 onMouseOver 元素的颜色

php - 根据动态数字或从 foreach 循环生成的元素计算宽度

javascript - 使用react Flux架构通过AJAX发送数据

javascript - 使用 audio.play() 函数时 react 错误

php - 加载 WordPress 帖子而不使用 get_header() 和 get_footer()

javascript - 在ajax jquery中处理多个聊天框

jquery - 悬停在 js 生成的类/元素上不起作用

javascript - 当选择其他时如何隐藏当前下拉列表下方的div - qualtrics