请问一个下拉菜单的问题。 本帖最后由 lyh5719 于 2010-07-01 10:42:18 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 $s = '<SELECT id=deptId name=deptId> <OPTION class=gray value="" selected>===不限===</OPTION><OPTION class=blue value=2019>└合作销售</OPTION> <OPTION class=blue value=49> ├江南证券</OPTION> <OPTION class=blue value=50> │ ├深圳营业部</OPTION> <OPTION class=blue value=51> │ ├上海营业部</OPTION> <OPTION class=blue value=57> │ ├杭州营业部</OPTION> <OPTION class=blue value=2000> │ ├重庆营业部</OPTION> <OPTION class=blue value=2003> │ ├昆明营业部</OPTION> <OPTION class=blue value=2004> │ ├北京营业部</OPTION> <OPTION class=blue value=2005> │ ├天津营业部</OPTION> <OPTION class=blue value=2006> │ ├武汉营业部</OPTION> <OPTION class=blue value=2007> │ ├郑州中原路营业部</OPTION> <OPTION class=blue value=2029> │ │ └投资理财部</OPTION> <OPTION class=blue value=2008> │ ├南昌营业部</OPTION> <OPTION class=blue value=2021> │ │ ├南昌营业部营销中心</OPTION> <OPTION class=blue value=2022> │ │ ├南昌营业部客服中心</OPTION> <OPTION class=blue value=2023> │ │ └南昌营业部运营中心</OPTION> <OPTION class=blue value=2009> │ ├吉安营业部</OPTION> <OPTION class=blue value=2010> │ ├景德镇营业部</OPTION> <OPTION class=blue value=2011> │ ├上饶营业部</OPTION> <OPTION class=blue value=2020> │ │ └客服中心</OPTION> <OPTION class=blue value=2012> │ ├宜春营业部</OPTION> <OPTION class=blue value=2013> │ ├丰城营业部</OPTION> <OPTION class=blue value=2014> │ ├赣州营业部</OPTION> <OPTION class=blue value=2028> │ │ └客服中心</OPTION> <OPTION class=blue value=2015> │ ├郑州嵩山路营业部</OPTION> <OPTION class=blue value=2016> │ ├泉州营业部</OPTION> <OPTION class=blue value=2030> │ │ └客服部</OPTION> <OPTION class=blue value=2017> │ ├总部</OPTION> <OPTION class=blue value=2031> │ ├九江营业部</OPTION> <OPTION class=blue value=2032> │ ├萍乡营业部</OPTION> <OPTION class=blue value=2033> │ └乐平营业部</OPTION> <OPTION class=blue value=2024> └测试营业部</OPTION></SELECT>';echo $s; js就可以了。var select_value = "";function TreeView(obj,target){ this.obj=obj; this.root=new node(-1,-1,""); this.nodes=[]; this.currentNode=null; this.html=""; this.config={ blank :'|-', line :'|-' }; for(i in this.config){var tem=this.config[i];this.config[i]=new Image();this.config[i].txt=tem;}};function node(id,pid,txt){ this.id=id; this.pid=pid; this.txt=txt; this.indent=""; this.open=false; this.lastNode=false; this.hasNode=false;};TreeView.prototype.add=function(id,pid,txt){ var itemTxt=txt?txt:"New Item"; this.nodes[this.nodes.length]=new node(id,pid,itemTxt);};TreeView.prototype.DrawTree=function(pNode){ var str=""; for(var i=0;i<this.nodes.length;i++){ if(this.nodes[i].pid==pNode.id){ str+=this.DrawNode(this.nodes[i].id,i); } } return str;};TreeView.prototype.ChkPro=function(pNode){ var last; for(var n=0;n<this.nodes.length;n++){ if(this.nodes[n].pid==pNode.id){ pNode.hasNode=true; } if (this.nodes[n].pid == pNode.pid){last= this.nodes[n].id;} } if (last==pNode.id){pNode.lastNode = true;}};TreeView.prototype.DrawNode=function(id,nid){ var str=""; var select_ed = ""; var nNode=this.nodes[nid]; this.DrawLine(nNode,nNode); if(nNode.hasNode) {nNode.indent+=(nNode.hasNode?"":"");} if (select_value==id){select_ed = "selected"}else{select_ed = "";} str+="<option value="+id+" "+select_ed+">"+nNode.indent+this.DrawLink(nid)+"</option>"; if(nNode.hasNode){ str+=this.DrawTree(nNode); } return str;};TreeView.prototype.DrawLine=function(nNode,tem){ for(var i=0;i<this.nodes.length;i++){ if(this.nodes[i].id==tem.pid){ nNode.indent=(this.nodes[i].lastNode?this.config.blank.txt:this.config.line.txt)+nNode.indent; this.DrawLine(nNode,this.nodes[i]); } }};TreeView.prototype.DrawLink=function(nid){ var nNode=this.nodes[nid]; return nNode.txt;};TreeView.prototype.toString=function(){ var str=""; this.ChkPro(this.root); for(var i=0;i<this.nodes.length;i++)this.ChkPro(this.nodes[i]); str+=this.DrawTree(this.root); return str;};<script language="javascript" src="js/select_tree.js"></script><SCRIPT LANGUAGE="JavaScript">var m=new TreeView('m','main')var select_value = "<?php echo $select_value;?>";m.add(0,-1,'ROOT');<?phpforeach($newclassdb as $class){ echo "m.add({$class['id']},{$class['pid']},'{$class['text']}');";}?>document.write("<div class=box1><div class=box2><select name='cid'>"+m+"</select></div></div>");</SCRIPT> 树型下拉框,你应该格式化下你的数据,问明白点。你可以按以下的数组格式构建一个完整点的数据,再发出来,懒得帮你构建数据了。$tree = array('id'=>'1','pid'=>0,'text'=>'所有部门',value=>'2000') sorry,这样才对$tree[] = array('id'=>'1','pid'=>0,'text'=>'所有部门',value=>'2000') PHP二维数组 新手PHP入门求教 mysql的一个表在phpmyadmin中提示in use,查看"结构"时提示Incorrect key file for table $order->id|string_format:"%06d"出错 秀下我的AJAX留言本 请教一SESSION问题. 数据库接口问题 windows下配置php的疑惑,高手帮忙解答???? 第一次发帖,关于后台输出前台的。 微信第三方平台全网发布返回Api文本消息失败 上海的朋友进来! 迷途的小羊
$s = '<SELECT id=deptId name=deptId> <OPTION class=gray value=""
selected>===不限===</OPTION><OPTION class=blue value=2019>└合作销售</OPTION>
<OPTION class=blue value=49> ├江南证券</OPTION> <OPTION
class=blue value=50> │ ├深圳营业部</OPTION> <OPTION
class=blue value=51> │ ├上海营业部</OPTION> <OPTION
class=blue value=57> │ ├杭州营业部</OPTION> <OPTION
class=blue value=2000> │ ├重庆营业部</OPTION> <OPTION
class=blue value=2003> │ ├昆明营业部</OPTION> <OPTION
class=blue value=2004> │ ├北京营业部</OPTION> <OPTION
class=blue value=2005> │ ├天津营业部</OPTION> <OPTION
class=blue value=2006> │ ├武汉营业部</OPTION> <OPTION
class=blue value=2007> │ ├郑州中原路营业部</OPTION>
<OPTION class=blue
value=2029> │ │ └投资理财部</OPTION> <OPTION
class=blue value=2008> │ ├南昌营业部</OPTION> <OPTION
class=blue
value=2021> │ │ ├南昌营业部营销中心</OPTION>
<OPTION class=blue
value=2022> │ │ ├南昌营业部客服中心</OPTION>
<OPTION class=blue
value=2023> │ │ └南昌营业部运营中心</OPTION>
<OPTION class=blue value=2009> │ ├吉安营业部</OPTION>
<OPTION class=blue value=2010> │ ├景德镇营业部</OPTION>
<OPTION class=blue value=2011> │ ├上饶营业部</OPTION>
<OPTION class=blue
value=2020> │ │ └客服中心</OPTION> <OPTION
class=blue value=2012> │ ├宜春营业部</OPTION> <OPTION
class=blue value=2013> │ ├丰城营业部</OPTION> <OPTION
class=blue value=2014> │ ├赣州营业部</OPTION> <OPTION
class=blue
value=2028> │ │ └客服中心</OPTION> <OPTION
class=blue value=2015> │ ├郑州嵩山路营业部</OPTION>
<OPTION class=blue value=2016> │ ├泉州营业部</OPTION>
<OPTION class=blue
value=2030> │ │ └客服部</OPTION> <OPTION
class=blue value=2017> │ ├总部</OPTION> <OPTION
class=blue value=2031> │ ├九江营业部</OPTION> <OPTION
class=blue value=2032> │ ├萍乡营业部</OPTION> <OPTION
class=blue value=2033> │ └乐平营业部</OPTION> <OPTION
class=blue value=2024> └测试营业部</OPTION></SELECT>';
echo $s;
function TreeView(obj,target){
this.obj=obj;
this.root=new node(-1,-1,"");
this.nodes=[];
this.currentNode=null;
this.html="";
this.config={ blank :'|-',
line :'|-'
};
for(i in this.config){var tem=this.config[i];this.config[i]=new Image();this.config[i].txt=tem;}
};function node(id,pid,txt){
this.id=id;
this.pid=pid;
this.txt=txt;
this.indent="";
this.open=false;
this.lastNode=false;
this.hasNode=false;
};
TreeView.prototype.add=function(id,pid,txt){
var itemTxt=txt?txt:"New Item";
this.nodes[this.nodes.length]=new node(id,pid,itemTxt);
};TreeView.prototype.DrawTree=function(pNode){
var str="";
for(var i=0;i<this.nodes.length;i++){
if(this.nodes[i].pid==pNode.id){
str+=this.DrawNode(this.nodes[i].id,i);
}
}
return str;
};TreeView.prototype.ChkPro=function(pNode){
var last;
for(var n=0;n<this.nodes.length;n++){
if(this.nodes[n].pid==pNode.id){
pNode.hasNode=true;
}
if (this.nodes[n].pid == pNode.pid){last= this.nodes[n].id;}
}
if (last==pNode.id){pNode.lastNode = true;}
};TreeView.prototype.DrawNode=function(id,nid){
var str="";
var select_ed = "";
var nNode=this.nodes[nid];
this.DrawLine(nNode,nNode);
if(nNode.hasNode)
{nNode.indent+=(nNode.hasNode?"":"");}
if (select_value==id){select_ed = "selected"}else{select_ed = "";}
str+="<option value="+id+" "+select_ed+">"+nNode.indent+this.DrawLink(nid)+"</option>";
if(nNode.hasNode){
str+=this.DrawTree(nNode);
}
return str;
};
TreeView.prototype.DrawLine=function(nNode,tem){
for(var i=0;i<this.nodes.length;i++){
if(this.nodes[i].id==tem.pid){
nNode.indent=(this.nodes[i].lastNode?this.config.blank.txt:this.config.line.txt)+nNode.indent;
this.DrawLine(nNode,this.nodes[i]);
}
}
};
TreeView.prototype.DrawLink=function(nid){
var nNode=this.nodes[nid];
return nNode.txt;
};TreeView.prototype.toString=function(){
var str="";
this.ChkPro(this.root);
for(var i=0;i<this.nodes.length;i++)this.ChkPro(this.nodes[i]);
str+=this.DrawTree(this.root);
return str;
};<script language="javascript" src="js/select_tree.js"></script>
<SCRIPT LANGUAGE="JavaScript">
var m=new TreeView('m','main')
var select_value = "<?php echo $select_value;?>";
m.add(0,-1,'ROOT');
<?php
foreach($newclassdb as $class){
echo "m.add({$class['id']},{$class['pid']},'{$class['text']}');";
}
?>
document.write("<div class=box1><div class=box2><select name='cid'>"+m+"</select></div></div>");
</SCRIPT>
你可以按以下的数组格式构建一个完整点的数据,再发出来,懒得帮你构建数据了。
$tree = array('id'=>'1','pid'=>0,'text'=>'所有部门',value=>'2000')
$tree[] = array('id'=>'1','pid'=>0,'text'=>'所有部门',value=>'2000')