终止ajax请求】的更多相关文章

在做搜索功能时,文本框输入文本就得请求一次数据,如果上一次的请求还没回又请求了就导致数据错误和无用的数据请求. 我们需要输入文本时候判断上一次的ajax请求是否完毕,若还没完毕就终止本次请求. 对于jquery: <script src = "jquery.js"></script> <script> var xhr = $.ajax({type:'POST', url:'b.php', data:'', success:function(){ al…
                           $(document).ready(function () { var ajax; $('#choice').change(function() { if(ajax) { ajax.abort(); } ajax = $.get( 'wait.php', { what : $(this).val() }, function(response) { $('#response').html(response); }, 'html' ); });…
最近遇到,如果用户频繁点击ajax请求,有两个问题: 1,如果连续点击了5个ajax请求,前4个其实是无效的,趁早结束节省资源. 2,更严重的问题是:最后一个发送的请求,响应未必是最后一个,有可能造成混乱.还需要一个队列来维护发送的请求和响应. 我其实已经设计好了该队列的实现方式,后来发现jQuery直接通过abort方法,这样就不需要那么复杂的实现了,毕竟还有其他事情等着完成. 用jquery发送ajax请求的确是太方便了,$.get.$.post.$.ajax等等,但我们有时候需要中途中止a…
检查页面的network执行中发现页面被刷新了url改变了导致请求在请求过程中被终止了. 检查代码发现在 submit方法中最后写了个  location.reload();方法 来重载页面 虽然是卸载了ajax请求方法之后但是由于ajax启用的异步模式 所以方法在执行的时候不会等待ajax请求方法执行完再进行重载. 导致ajax请求过程中url改变 请求被终止. 修正方法: 1.将ajax请求改为同步的那么 location.reload();方法会在等待ajax请求执行结束后进行执行 2.将…
场景描述: 在我们平时的开发过程中,经常会遇到这样的情况.在搜索功能中进行模糊搜索或者联想关联. 这就要我们每次对输入框中的数据进行改动时,都要发送一次请求.当在短时间内多次操作改动时,问题就出现了. 每次操作的请求都会返回数据,有时,返回的数据需要时间长,有时返回的数据需要时间短.大家都知道,ajax请求默认的是异步请求,每次请求和请求后进行的操作,都是独立进行的.当同一个请求多次发生时,他在页面上最终执行的效果是,以最晚返回的数据进行相应的展示操作,而不是绝对以最后一次请求所返回的数据进行展…
一.概述 AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术. AJAX = 异步 JavaScript 和 XML,是一种用于创建快速动态网页的技术.通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新.传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面. 本博客实验环境: python: web框架:tonado jquery:2.1.1 二.“伪”AJAX 由于HTML标签…
JQuery库的Ajax请求的几种方法: 1. load( url, [data], [callback] ) :载入远程 HTML 文件代码并插入至 DOM 中. 参数含义: url (String) : 请求的HTML页的URL地址. data (Map) : (可选参数) 发送至服务器的 key/value 数据. callback (Callback) : (可选参数) 请求完成时(不需要是success的)的回调函数. 这个方法默认使用 GET 方式来传递的,如果[data]参数有传递…
背景:有一个按钮,点击之后向后端程序发起Ajax请求,在请求结果没有返回之前,页面显示等待的效果,此时仍旧是异步请求,等待的效果在接收到结果后撤销. 需求:因为网络延迟或者后端程序的问题,在发起Ajax请求后,可能等待10s都接收不到数据,现在需要做的就是,如果等待时间超过10s,那么就提示用户进行其他操作,不用再继续等待结果,终止Ajax获取到数据后的操作,即认为Ajax永远取不到数据了. 解决方案:可以使用Jquery的ajax方法,方法中有timeout和error这两项,timeout的…
偶然碰到一个小Bug ajax请求执行后返回了一个canceled(状态码) 但是后台却接受了参数并且执行成功0.0 刚看到这个状态的时候是一脸懵逼的.... 之前并没见过这样的状态码 经过参数确认并且再三确认 并没有发现什么异常.... 后来发现Url在请求的时候被莫名其妙的带上了些参数 经过检查html代码发现莫名其妙的出现了一个from标签 而我的提交按钮绝然还是个submit!! 没错,我在给人家擦屁股 原因 究其原因 仅仅是因为from action事件与绑定与submit按钮上的cl…
1.管线化技术——客户端可以发送多次请求到服务端,而不需要等待上一次请求得到响应的时候才能进行下一次请求.实现并行发送请求 2.ajax——实现网页异步刷新 问题:当用户进行多次ajax请求的时候,并且将内容显示在页面的同一个元素中.如果上一次请求时间过长,后面的请求时间短, 就会造成,上一次请求的数据会将后面的内容覆盖. ajax 提供结束上一次请求的函数,使得在每一次请求之前结束上一次请求. 代码如下: /*终止上一次请求*/ if (currentAjax != null) { curre…