var data;
$(document).ready(function(){
var rows = document.getElementById("orderlist_1").rows; var cell = rows[rows.length - 1].cells[3];
data = "id="+cell.innerHTML
checkAndNotify();
})
function checkAndNotify()
{
alert("oo");
$("#shownoti").load("/mostrecenttransaction","id=2008010661301520679");
t = setTimeout("checkAndNotify()",3000)
return true;
}
//$(document).ready(checkAndNotify())在上面的代码中,当我打开网页时,每3秒就会显示一次内容窗口。但是,下一行好像它从未执行过一样。如果我手动打开http://127.0.0.1:8000/mostrecenttransaction/?id=2008010661301520679,它会返回一个HttpResponse,所以为什么从未发送过AJAX调用。
我已经通过进入网络选项卡来使用google的检查元素进行检查&观察到,即使警报(“oo”)每3秒执行一次,但ajax请求从未发送。有人能帮帮我吗。我花了那么多时间在上面,但我想不出来。您可以简单地通过git克隆检查代码& "git签出反code“。代码可以简单地由"python2 manage.py runserver“运行,不需要配置。(输入用户名为"123456789”,密码为abcd --如果您可以亲自查看它,那就太好了。至少,作为初学者,这对我来说太有趣了。
我的回购-> https://github.com/shadyabhi/pycourt_login/tree/counternoti
Urls.py中的相关代码:(./urls.py)
(r'^mostrecenttransaction/',mostRecentTransaction),views.py:(./views.py:第339行)
def mostRecentTransaction(request):
transactid_atdocument = request.GET['id'][7:]
latestid = Ordersss.objects.latest('transaction_id').transaction_id[7:]
print latestid, transactid_atdocument
if latestid > transactid_atdocument:
return HttpResponse("Food List outdated, please refresh")
else:
return HttpResponse("")模板:(./模板/line.line:第282行)
<script type="text/javascript" src="/pycourt/newordernotification.js"></script>
..
..
<div id=shownoti"></div>我是jQuery & AJAX的新手,在我尝试了几个小时解决它之后,这件事让我抓狂了。的要点是,如果显示了“警报”,那么为什么不使用AJAX请求呢?将非常感谢您的回复。
发布于 2011-03-31 04:04:41
jQuery.ajax({
url: "mostRecentTransaction",
type: "GET",
data: { id : 2008010661301520679 },
success: function(data) {
alert(data);
jQuery('#shownoti').html(data).hide().fadeIn(1500);
}
});发布于 2011-03-31 04:01:00
尝试使用setInterval而不是setTimeout
https://stackoverflow.com/questions/5495143
复制相似问题