我有一个菜单,我想从菜单中选择项目时显示内容,但我不能调用 ajax 函数。当我从菜单中单击项目时,地址行中只出现了所选项目的 ID:
http://localhost:8080/treeview/#2
来自浏览器的 HTML 代码:
<a onclick="callPage(1)"; href="#1 "> <span style="color:yellow";>item1</span></a>
PHP 代码,我在其中形成 html 代码:
$out .= '<li id="'.$item['id'].'"> <label for="subfolder2">';
$out .= '<a onclick="callPage('.$item['id'].')"; href="#'.$item['id'].' "> <span style="color:'.$item['color'].'";>'.$item['title'].'</span></a>';
$out .= ' </label> <input type="checkbox" id="subfolder2"/>';
AJAX 功能:
// JavaScript Document
function callPage(id)
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("pageContent").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","content.php?id="+id,true);
xmlhttp.send();
}
一个内容文件,我经过测试,他工作得很好,当我把他带到浏览器的地址栏中时:
<?php function __autoload($class){
include_once($class.".php");
}
$id=$_REQUEST['id'];
$db = new oopCrud();
$rty = $db->getById($id);
echo $rty['title'];
echo $rty['color'];
?>