我有一个php页面,它使用javascript在页面上生成日历。我试图传递一个变量,以便我可以在加载的页面上引用它。
以下是我用来生成日历的脚本(以及其他几个)
<script language="javaScript" type="text/javascript">
function initialCalendar(){
var hr = new XMLHttpRequest();
var url = "calendar_start.php";
var currentTime = new Date();
var month = currentTime.getMonth() + 1;
var year = currentTime.getFullYear();
showmonth = month;
showyear = year;
var vars = "showmonth="+showmonth+"&showyear="+showyear;
hr.open("POST", url, true);
hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
hr.onreadystatechange = function() {
if(hr.readyState == 4 && hr.status == 200) {
var return_data = hr.responseText;
document.getElementById("showCalendar").innerHTML = return_data;
}
}
hr.send(vars);
document.getElementById("showCalendar").innerHTML = "processing...";
}
</script>
以下是我在php页面上显示的方式:
<body onLoad="initialCalendar();">
我尝试在初始日历()的括号中使用'<?php echo $page; ?>'
和'<?php $_POST['$page'] ?>'
但是我没有运气,我希望我已经正确解释并且有足够的细节来制作,但是如果你需要更多的东西请注意
谢谢, 莱恩
答案 0 :(得分:0)
我不知道你的$_POST
数组的布局,但如果我理解了问题,你应该尝试:
<body onLoad="initialCalendar('<?php echo $_POST['page'];?>');">
并将您的函数声明更改为:
function initialCalendar(page){
请注意,我在PHP输出的值周围使用了单引号'
。这样可以确保在值为字符串时不会破坏任何内容。
答案 1 :(得分:0)
因为您通过
等参数传递变量localhost/project/calendar.php?page=something
使用$_GET['page']
而不是$_POST