JS简洁版下拉树

这是struts2的应用其他也可以根据需要灵活改动:

        <script type="text/javascript">
    //JS下拉 树
var data =new Array();
<s:iterator  value="#request.articleTypelist" status="stuts">
data[${stuts.index}]= {id:'<s:property value="id" />',pid:'<s:property value="parentID" />',text:'<s:property value="name"  escape="false"/>'};

  </s:iterator>
function TreeSelector(item,data,rootId){
this._data = data;
this._item = item;
this._rootId = rootId;

}
TreeSelector.prototype.createTree = function(){
var len =this._data.length;
for( var i= 0;i<len;i++){
if ( this._data[i].pid == this._rootId){
this._item.options.add(new Option(".."+this._data[i].text,this._data[i].id));
for(var j=0;j<len;j++){
this.createSubOption(len,this._data[i],this._data[j]);

}
}
}
}

TreeSelector.prototype.createSubOption = function(len,current,next){
var blank = "    ";
if ( next.pid == current.id){
intLevel =0;
var intlvl =this.getLevel(this._data,this._rootId,current);
for(a=0;a<intlvl;a++)
blank += "    ";
blank += " ├-";
this._item.options.add(new Option(blank + next.text,next.id));

for(var j=0;j<len;j++){
this.createSubOption(len,next,this._data[j]);

}

}
}

TreeSelector.prototype.getLevel = function(datasources,topId,currentitem){

var pid =currentitem.pid;
if( pid !=topId)
{
for(var i =0 ;i<datasources.length;i++)
{
if( datasources[i].id == pid)
{
intLevel ++;
this.getLevel(datasources,topId,datasources[i]);
}
}
}
return intLevel;
}
function VF(){
    $('myselect').value=$('realtype').value;
}
</script>

 

 

 

转载于:https://my.oschina.net/u/780705/blog/706948

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值