ajax异步提交后出现卡死现象
发布时间:2020-12-16 00:37:16 所属栏目:百科 来源:网络整理
导读:本人是做电视节目站点开发,最近出现一个问题,异步提交后,页面一直在缓冲,出现卡死现象, 在电脑测试一切正常,感觉很郁闷,代码什么没有问题,后发现是ajax问题。 ajax分为同步提交和异步提交。以下是两个方法区别。 异步方法: function getJSON2(){ va
本人是做电视节目站点开发,最近出现一个问题,异步提交后,页面一直在缓冲,出现卡死现象, 在电脑测试一切正常,感觉很郁闷,代码什么没有问题,后发现是ajax问题。 ajax分为同步提交和异步提交。以下是两个方法区别。
异步方法:
总结:对于一些数据的获取,同步必须要等到服务器的响应。如果是异步(true),返回值是null,因为程序执行完send后不等xmlhttp的响应,而继续执行下一条js语句,所以tmp还没有来的及变化就已经返回null了。所以如果想获得xmlhttp返回值必须用同步,异步无法得到返回值。 这就是为什么我在后面的操作一直取不到这个函数的返回值的缘故了。ajax的同步破坏了ajax异步的初衷,除非忘不得已(比如需要对响应的数据进行进一步处理)才使用。
还有,同步异步使用xmlhttp池时都要注意:取得xmlhttp时只能新建xmlhttp,不能从池中取出已用过的xmlhttp,(这种情况主要发生在需要循环的时候)因为被使用过的xmlhttp的readyState为4,所以同步异步都会send但不执行onreadystatechange。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |