【发布时间】:2018-06-17 14:48:25
【问题描述】:
我使用这个 ajax 脚本:
$.ajaxSetup ({
// Disable caching of AJAX responses
cache: false
});
function getRandomInt() {
return Math.floor(Math.random() * Math.pow(10,6));
}
$(document).ready(function(){
$('#edit_in_buy_usd').click(function(){
$.post("edit_id.php?rnd=" +getRandomInt(),
{edit_id: $('#edit_in_buy_usd').val()},
function(data){
$('#id').html(data);
}
);
});
});
按下按钮后,我创建了一个变量,该变量将转到 edit_id.php ,执行某些过程并将结果返回到 id="id" 的同一 Div。一切都很完美,但是......在按下按钮大约 30-40 次后,页面开始运行超慢。我阅读了很多主题,我添加了一些东西,但我在 Ajax 技术方面没有太多经验......并且无法单独处理......如果你帮助我,我将非常感谢你..提前谢谢你!
【问题讨论】:
-
为什么要发送 30-40 个请求?你想达到什么目的?也许您可以将其减少到更少的请求。另外——你的反应有多大?也许您发送的数据过多。太多的 HTML 会导致这个问题。
-
该页面是一个经常被点击的表格,因此它被收集请求,在 div 中重新加载的信息很大......但我相信有一些方法可以清除它例如,在每次请求后从浏览器中获取。
-
如果您也控制服务器端,您可能会检查是否可以选择只发回更新而不是“大”的东西
-
一定要考虑@user2413548 所说的。以响应式、重复的方式重新加载整个数据集通常会导致灾难。这是关于仅发回更改,而不是所有内容。
-
您可能需要考虑使用 JSON,并使用给定的参数构建必要的 HTML。
标签: php jquery ajax ajax-request