jQuery $ .ajax成功但服务器没有收到任何数据

时间:2014-12-30 19:35:17

标签: javascript php jquery ajax load

我在一个分页系统上工作,该系统不会重新加载整个页面,只是刷新内容。 我使用ID中包含的值检索请求的页面,并希望将其发送到服务器以进行处理。

已达到success,但我的php脚本无法识别$_POST['page']值。 这是JS:

    $(document).ready(function()
{
    $('#containerWrapper').on('click', '.holder a', function (event) {

        var page = $(this).attr('id');
        var url = "cart.php";
        event.preventDefault();

        // Launch of the Ajax query to refresh the current page
        $.ajax({
            url: "cart.php",
            type: "POST",
            data: {page: page},
            success: function()
            {
                alert('Success, delivered page: ' + page);
                $('#containerWrapper').load(url + " #containerWrapper");
            }
        }); 
    });
});        

这里的PHP,我认为不是真正的问题:

if (isset($_POST['page']) && ($_POST['page'])>0 && ($_POST['page'])<= $nbPages)
    {
        $cPage = htmlspecialchars($_POST['page']);
    }    

我准备了很多主题,但现在还没有发现任何相关问题。

1 个答案:

答案 0 :(得分:0)

你真的有太多的代码,你的目的不需要在AJAX调用中埋葬load()语句。你可以这么做 -

$(document).ready(function(){
    $('#containerWrapper').on('click', '.holder a', function (event) {
        event.preventDefault();
        var url = "cart.php";
        var page = $(this).attr('id');
        $('#containerWrapper').load(url + " #containerWrapper", {page: page});
    }); 
});

load()允许您通过第二个争论将数据发送到请求的页面。