我正在使用django + HTML + JavaScript编写音乐测验,但我完全陷入困境。
我想要做的是计算玩家找到解决方案的时间。但是由于音乐的加载时间,我现在所拥有的不同步。我的想法是在玩家开始时向django发送一些东西,然后在django中存储time.time()(不刷新页面!)。之后,当玩家点击他认为的歌曲时,它会发布一个表单,我将新的time.time()与之前的一个比较,结束了。
一切都很好但我对Jquery和Ajax了解不多,我认为这是在不刷新页面的情况下发布内容的方式。
我的Javascript(这是一个很好看的计时器,但我不想发布在javascript上计算的时间,因为,任何人都可以发布他想要的时间!):
function onPlayerStateChange(event) {
if (event.data == YT.PlayerState.PLAYING){
//post Start to Django
setTimeout(function decompte() {
setTimeout(function() {
te--;
if (te<0) {
te = 9; sc--
}
time = sc+" s "+te;
form.time.value=time;
if (end) {
return;
}
else if (sc == 0 & te == 0) {
zero()
}
decompte();
}, 100);
},0); //launch the function... Not a very esthetic way to do it but it works !
}
}
有什么想法吗?
答案 0 :(得分:1)
它可以通过简单的jQuery Post请求完成。以下示例django项目中给出了很多示例。它有适当的HTML / jQuery来发送AJAX调用,urls.py
来接收和myapp/views.py
来处理和返回响应。