Php 通过ajax发送已使用的变量
我在页面上使用jquery日期选择器。在datepicker的旁边,我有一个部分将显示datepicker鼠标指针上的事件。我想出了一个办法,把日期写进这一节的标题里。我遇到的问题是将该变量转移到将在mousenter上显示的php页面 下面是将显示日期选择器和事件的页面:Php 通过ajax发送已使用的变量,php,jquery,ajax,datepicker,Php,Jquery,Ajax,Datepicker,我在页面上使用jquery日期选择器。在datepicker的旁边,我有一个部分将显示datepicker鼠标指针上的事件。我想出了一个办法,把日期写进这一节的标题里。我遇到的问题是将该变量转移到将在mousenter上显示的php页面 下面是将显示日期选择器和事件的页面: <div id=events> <div id=eventcontent> </div> </div>
<div id=events>
<div id=eventcontent>
</div>
</div>
<div id=eventsheading>
<div id=headingcontent>
</div>
</div>
<div id = "datepicker">
</div>
下面是events.php:
if(isset($_POST['Date']))
{
$date = $_POST['Date'];
echo <<<_END
<p>$date</p>
_END;
}
else
{
echo <<<_END
<p>hello!</p>
_END;
}
我似乎找不到任何地方可以解释如何使用数据:{…},我猜这是我的问题
很抱歉,如果代码完全错了,我对学习这一切还很陌生,谢谢你的帮助。你不能像@CBroe所说的那样使用与内置对象冲突的变量名。 然后像这样休息
var myDate = daynum1 + " " + month1 + " " + year1;
$('#headingcontent').html(myDate);
$.ajax({
url: "events.php",
type: "POST",
data: {myDate: myDate},
dataType: "html",
success: function(html){
$("#eventcontent").empty();
$("#eventcontent").append(html);
}
});
无需第二次ajax调用首先:不要使用与内置对象冲突的变量名-JS已经有了一个
Date
对象,因此使用它作为变量名是自找麻烦的。(是的,它只是显示的代码中的一个局部变量,但仍然不要这样做。)其次,为什么要在这里发出两个AJAX请求?您只发送第一个数据-因此在第二个数据中,该值当然不可用。只需发出一个请求,将数据发送到服务器,然后在页面中显示响应。@CBroe关于名称的观点很好,我将更改它。我对这一切都很陌生,有没有可能进一步解释如何提出第二个请求?你不需要两个请求。发出一个发送数据的POST请求,并为该请求指定一个成功回调。首先,当您使用日期发出带有POST数据的第一个请求时,请尝试了解请求和响应的范围,它仅适用于您的第一个请求,因此当您尝试执行第二个请求时,它将进入其他部分,因为日期已发布在第一个请求中,希望这对您有意义谢谢。到目前为止,我对这方面的知识非常有限,但我使用了第二个ajax调用来告诉#eventcontent在其中使用新更新的events.php。这是通过.append实现的吗?我知道这篇文章将coorrect信息发布到event.php,但它是否会将新的events.php加载到eventcontent中?@josh在这种情况下,您必须替换该div中以前的所有事件数据才能使用html()。查看我的最新帖子(如果我清楚了解您的要求)
//ajax call with date information
var request = $.ajax({
url: "events.php",
type: "POST",
data: {Date: Date},
dataType: "html"
});
var myDate = daynum1 + " " + month1 + " " + year1;
$('#headingcontent').html(myDate);
$.ajax({
url: "events.php",
type: "POST",
data: {myDate: myDate},
dataType: "html",
success: function(html){
$("#eventcontent").empty();
$("#eventcontent").append(html);
}
});