提示时,Ajax不会执行新请求

时间:2019-12-14 08:13:06

标签: php ajax

我仍在学习Ajax,每次我想使用Ajax更改页面内容时,我都会使用以下脚本:

function load_page(id)
{
    $.ajaxSetup({ cache: false });

    var toId = "";

    $('#ajax-intro-body').show();

    if (id == "dashboard")
        toId = "../src/pages/partials/" + id + ".php";
    else
        toId = "../src/pages/" + id + ".php";

    $.ajax({
        url:toId,
        method:"POST",
        cache: false,
        headers: { "cache-control": "no-cache" },
        data:{},
        success:function(data)
        {
         if (data == "session_expired"){
             location.replace("../src/pages/login/")
         }else{
              // Show output data
              $('#ajax-content').html(data);
              // Set refresh address id
              $('.refresh-content').attr('id',id);
              // Fade out the loading bar body
              $('#ajax-intro-body').fadeOut(100);
              // Remove animation from sync
              $('#refresh-icon').removeClass("fa-spin");
         }
        }
    });
}

所以我认为代码很容易理解。现在我有一个“项目页面”,您也可以在其中删除它,此页面正在使用脚本加载,并且我在php中获得了以下代码:

if ($_SERVER['REQUEST_METHOD'] === 'GET') {
        if (isset($_GET['id'])){ 

        $("#dialog-3").dialog({
        autoOpen: false,//remove this and the click to aut open
        bgiframe: true,
        width: 340,
        modal: true,
        resizable: false,
        buttons: {
                "Delete":function(){
                        $(this).dialog("close");

                        $.ajax({
                                type: "POST",
                                url: "../src/requests/deleteproject.php",
                                data: {
                                    id: <?php echo $projectid; ?>,
                                    flag: true,
                                },
                                success: function (data) {
                                    load_page('projects/listprojects');
                                }
                        });

                },
                Cancel: function() {
                        $(this).dialog("close");
                }
        }
});
}
}

因此,如果我想删除它,则可以看到我正在尝试在项目页面内执行ajax请求。使用浏览器的“网络”选项卡,我可以看到,当我调用项目页面时,实际上GET参数ID已更改为正确的数字,但实际上并没有更新ID id: <?php echo $projectid; ?>,。我读过我需要在ajax请求中将缓存设置为 false ,但是它似乎无法正常工作,因此我无法更新ID。

你们有什么主意吗?谢谢!

0 个答案:

没有答案