这是我写的自动完成树状列表的程序,其中的javascript来自PHPMyAdmin, 帮忙看看,如果你认为还可以,在你的网站发表吧,注明我的主页地址就可以了,http://mrcool.5915.net 呵呵~~~ list_count=0; $this -> child_count=0; $this -> item_count=0; $this -> $imagesurl=$img_url; } function makeScript() { //列表所需的Java代码 ?> parent_name[] = array("index"=>$this->list_count++, "name"=>$name); $this -> item_count=0; //子节点计数清零 return ($this -> list_count-1); //返回父节点索引 } function AddChild($index,$name,$url,$target,$title) { //参数说明: index -- 父节点索引 // name -- 子节点名称(显示) // url -- 连接地址 // target -- 连接目标 // title -- 提示 //增加子节点 static $valid; if($valid!=$index) { //子节点计数是否清零 $this->item_count=0; $valid=$index; } //获得子节点数组下标 $s1="item".$this->item_count++; $s="child".$index; $this -> child_name[$s][$s1] = array("name"=>$name, "url"=>$url, "target"=>$target, "title"=>$title); } function showTreeView(){ //显示整个TreeView $this->makeScript(); //首先输出JAVA代码 for($i=0; $ilist_count; $i++) { //依次显示父节点 $id="el".$this->parent_name[$i]["index"]; $imgid="el".$this->parent_name[$i]["index"]."Img"; echo " "; echo ""; echo "\n"; echo ""; echo ""; echo $this->parent_name[$i]["name"].""; echo "\n"; echo " \n"; echo " \n"; echo "\n"; echo " \n"; } //保证兼容性代码 echo "\n"; } }//end of class TreeView //下面是例子 $x=new TreeView; //创建类 //父节点的返回值是索引值,可以放弃返回值. $i=$x->AddParent("技术论坛"); //增加第一个父节点 $j=$x->AddParent("娱乐论坛"); //增加第二个父节点 //增加一个父节点下的子节点,可以不按照父节点的顺序增加, //但是同一个父节点下的子节点必须一次增加完毕,否则会产生错误的输出 $x->AddChild($i,"PHP 技术论坛","","",""); $x->AddChild($i,"CGI 技术论坛","","",""); $x->AddChild($i,"ASP 技术论坛","","",""); $x->AddChild(0,"jsp 技术论坛","","",""); //如果知道父节点索引,也可以直接写数值 //增加第二个父节点下的子节点 $x->AddChild($j,"重金属音乐","1","2","3"); $x->AddChild($j,"流行音乐","4","5","6"); $x->showTreeView(); ?>
(出处:http://www.sheup.com)