我的index.php
switch ($action){
case "calendar":
echo "<script language=\"javascript\">\n";
echo "document.write('Hello World!')";
echo "</script>";
include($_STR_TEMPLATEPATH."/calendar_view.php");
break;
}
我的calendar_view.php:
我有一个ajax函数,应该调用action
中的calendar
index
并在calendar_view.php
calendar div
上显示结果
<script>
function calendarList()
{
var xmlHttp;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
alert("Your browser does not support AJAX!");
return false;
}
}
}
xmlHttp.onreadystatechange=function()
{
if (xmlHttp.readyState==4 && xmlHttp.status==200)
{
document.getElementById("calendar").innerHTML=xmlHttp.responseText;
}
}
xmlHttp.open("GET","?action=calendar",true);
xmlHttp.send(null);
}
</scritp>
日历div:
<div id="calendar"></div>
当我调用calendarList function
时,它确实调用了案例,但未在calendar div
中显示结果。
任何帮助。感谢
答案 0 :(得分:1)
而不是使用脚本来编写文本只输出文本
switch ($action){
case "calendar":
echo "Hello World!";
include($_STR_TEMPLATEPATH."/calendar_view.php");
break;
}
我不认为插入带有innerHTML作品的脚本会看到Can scripts be inserted with innerHTML?
答案 1 :(得分:1)
那里显示的东西不多。如果一切都像您描述的那样,响应将附加到DOM,但JavaScript警报将永远不会执行。
尝试alert(xmlHttp.responseText);
以确保您的回答正确无误。如果是,你可以从那里去。