每次用户点击按钮时,我都会编写一些代码来在浏览器上显示服务器的当前日期和时间。我在jjery的帮助下使用django中的ajax完成了这个。 现在我的问题是,一旦点击按钮,我必须不断显示日期和时间。 一些允许这种延迟的示例代码或实用程序将很有帮助。 提前致谢
模板是:
$(document).ready(function()
{
$("button").click(function()
{
$.ajax({
type: "POST",
url :"/showdate/",
datatype: "json ",
success : function(data){
var s = data.currentdate;
var sd = s
$(sd).appendTo("div");
}
});
});
});
<button type="button">Click Me</button>
<div id="someid"></div>
视图功能是:
def showdate(request):
now = datetime.datetime.now()
string_now = str(now)
return_dict = {'currentdate':string_now}
json = simplejson.dumps(return_dict)
return HttpResponse(json,mimetype="application/json")
答案 0 :(得分:0)
让JS计算并每秒显示更新日期。这样你就可以避免一直遇到新的请求。然后每十分钟左右拨打一次电话或示例,以确保客户端和服务器不会同步。
答案 1 :(得分:0)
如果你想连续更新东西,而不是使用javascript中提供的SetIterval
功能。它不断调用函数。
查看有关setinterval函数的更多信息:http://www.elated.com/articles/javascript-timers-with-settimeout-and-setinterval/
示例代码:
<form name="myForm" action="" method="POST">
<input name="myClock" type="Text">
<script language=javascript>
self.setInterval('clock()', 50)
function clock() {
time=new Date()
document.myForm.myClock.value=time
}
</script>
</form>