PHP日历分页AJAX问题

时间:2015-06-02 12:51:09

标签: php ajax calendar singlepage

我正在尝试将AJAX分页添加到我的日历中,以避免重新加载整个网站,因为日历位于辅助选项卡中,在重新加载时重置为主选项卡。 通常我的" NEXT MONTH" -button将被包装在一个链接中,该链接刷新了同一页面,其中包含日期的GET值,如下所示:

<a href="?date=<?php echo $nextDate; ?>">
    <button type="button" class="btn">
        NEXT MONTH
    </button>
</a>

哪种方法效果很好。但是,当我尝试将表单中的$ nextDate值传递给AJAX并重新加载页面时,就好像它没有获取POST值一样。

HTML:

<form method="post">
    <input type="hidden" class="form-control" name="the_date" value="<?php echo $prevDate; ?>" />
        <button type="button" data-name="next-month" class="btn">
            NEXT MONTH
        </button>
</form>

使用Javascript:

$("body").on( "click", "[data-name='next-month']", function() { 
    var the_date = $(this.form).find(".form-control[name=the_date]").val();
        ajaxRequest = $.ajax({
            type: "POST",
            url: "index.php",
            data: { the_date: the_date}
   }).done(function (result) {
            alert(the_date)
            $("#calendar_container").load("index.php #calendar_container");
   })
});

我是否以正确的方式进行此操作,或者是否有某种原因导致在将POST值发送到同一网址时没有获取POST值?如果您对如何解决这个问题有任何建议,那将是我的一天!

1 个答案:

答案 0 :(得分:0)

当您将数据写入参数名称作为字符串常量发送时。

data: { "the_date": the_date}

data: { the_date: the_date}

你两次发出ajax请求。第二个没有任何参数。 所以替换下一行

$("#calendar_container").load("index.php #calendar_container");

$("#calendar_container").html(result);