在没有刷新的情况下发布django中的东西(JQuery,AJAX?)

时间:2013-08-08 11:09:20

标签: javascript ajax django jquery

我正在使用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 !
    }
}

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

它可以通过简单的jQuery Post请求完成。以下示例django项目中给出了很多示例。它有适当的HTML / jQuery来发送AJAX调用,urls.py来接收和myapp/views.py来处理和返回响应。

https://github.com/sivaa/django-jquery-ajax-exmaples