JQuery-Django如果语句不起作用

时间:2014-06-29 23:18:14

标签: javascript jquery python django if-statement

我试图在我的Django应用中添加一个简单的弹出窗口。它是如何工作的当我按下Yes按钮时,它会向我的Django视图发送请求。但是,我希望它在按“是”后自动关闭。不幸的是,把它直接放在我的"点击"函数是它完全关闭窗口而不向我的Django视图发送请求。

这就是为什么我想添加变量"点击"。单击按钮后,我希望它将变量值更改为" true"这样我最终可以运行一个if语句来关闭窗口。出于某种原因,当我尝试打开它时,弹出窗口会自动关闭。我猜是if语句不能正常工作?谢谢你的帮助!

$(document).ready(function(){
    var clicked=false;
    var deleteid;
    $('#yes').click(function(){

        deleteid = $(this).attr("data-deleteid");
        $.get ('../../delete_function/', {delete_id:deleteid}, function(data){});
        clicked = true;
    });
    if (clicked = true){
        window.close();
    }
});

1 个答案:

答案 0 :(得分:1)

$.get的回调函数中关闭窗口。

$.get ('../../delete_function/', {delete_id:deleteid}, function(){
    window.close();
});

您的if (clicked == true)仅在加载页面时运行,因为它不在任何事件处理程序中。那时,按钮显然还没有被点击,所以它没有做任何事情。

如果直接从点击处理程序调用{​​{1}},它将在AJAX调用有机会运行之前关闭窗口。当您关闭窗口时,它正在运行的所有脚本(包括排队的任何AJAX操作)都将被终止。