当Ajax从服务器请求新数据时,有时可能需要一两秒钟。 现在我想知道,如何在ajax请求和从服务器获得的响应之间获得这段时间?
我需要这个,因为我正在运行的ajax计时器并不能很好地完成他的工作。每当需要重置为原始时间时,它会有一些延迟。
先谢谢。
编辑:请快速帮助,请尝试。
答案 0 :(得分:0)
比如在发出请求时获取当前时间,在获得响应时做同样的事情并获得差异以了解经过的时间?
你的具体问题是什么?你不知道这个javascript?如果你非常匆忙,我猜猜谷歌会比SO更快。
修改强>
var date1 = new Date();
setTimeout(getElapsed,1000);
function getElapsed()
{
var date2 = new Date();
alert(date2.getTime()-date1.getTime());
}
这会在我的机器上发出“1008”警报 - 这相当于毫秒。
答案 1 :(得分:0)
这应该有效。从另一个例子中获取部分但使用ajax逻辑。
$(document).ready(function() {
$('#start').click(function() {
start_timer();
$.ajax({url: "/serverside.aspx", success: function(data){
stoptimer();
}});
});
});
var date1;
var start_timer = function(){ var date1 = new Date(); }
var stoptimer = function(){
var date2 = new Date();
alert('Request took: '+ date2.getTime()-date1.getTime())
}
答案 2 :(得分:0)
使用Firebug查看每个请求的时间。 http://getfirebug.com/network