动态删除、创建select

//创建select

var newOper=document.createElement("<select id='mid_"+j+"' onChange='clickS("+j+")'></select>");

newOper.length=5;//设置长度为5

//赋值

 newOper.options[0] = new Option("11", "dd");

new

//添加新的option

newOper.options.add(new Option(“66”,“66”));

删除option

newOper.options.remove(1);

//设置长度为0

newOper.options.length=0;


var selectI= document.getElementById("mid").selectedIndex;//获得是第几个被选中了
var selectT = document.getElementById("mid").options[selectIndex].text //获得被选中的项目的文本


 

//删除id

if(document.getElementById("mid")){ //判断是否存在
           var nodeS=document.getElementById("mid");
           //因为id本身的对象不能删除自己 ,所以要先通过 nodeS.parentNode得到父节点,然后把本id对象传入进行删除.
           nodeS.parentNode.removeChild(nodeS);         
   }

function clickS(i){  
    var TheArray = new Array("class_type","parent_id","class_name","class_path");
    //点击时,判断这个select后面是否已有别的select,有则全部删除
    if(i<TheArray.length-1){
      for(var m=i+1;m<TheArray.length;m++){
        if(document.getElementById("mid_"+m)){
           var nodeS=document.getElementById("mid_"+m);
           //因为id本身的对象不能删除自己 ,所以要先通过 nodeS.parentNode得到父节点,然后把本id对象传入进行删除.
           nodeS.parentNode.removeChild(nodeS);        
        }
      }
    }
    var selectValue=document.getElementById("mid_"+i).value;
   
    //判断是否为最后一个,根据传递的参数从后台读取下一个select存在,存在创建
    if(i<TheArray.length-1){
     var oper = [{
     actionName : "selectN",
     count : 1,
     operationDatas : [{
       selectValue : selectValue,
       dataNow:TheArray[i],
       dataNext:TheArray[i+1]               
     }]
    }];
  var params = com.sinosoft.common.Assistant
            .getParams(
              com.sinosoft.lz.system.user.LoginInfo
                .getUserId(),
              '123', Ext.encode(oper));
  var url = '/'
      + SysParameter.getProjectName()
      + '/ep/umcSelect/UmcSelectService/selectNext';
     com.sinosoft.common.uitls.Request.query(url,params,function(response,options){
          var responseT=Ext.util.JSON.decode(response.responseText);
          
            var array = responseT.ResponseMessage.operations[0].operationDatas;
          if(responseT.ResponseMessage.success==true){       
            var j=i+1;
            addSearch1(j,array);       
          }else{
            alert('木有子项');
          }
      });
    }
   
  }
 
 
    function addSearch1(j,array){
        var newOper=document.createElement("<select id='mid_"+j+"' onChange='clickS("+j+")'></select>");
        newOper.length = array.length;
          for(var k=0;k<array.length;k++){
            newOper.options[k] = new Option(array[k].es.v, array[k].es.v);
          }       
        document.getElementById("dd").insertBefore(newOper);
         
    }
 
</script>
</head>
<body style="overflow-x:hidden; margin:0 auto; padding:0; ">
<div id="dd">
 <select  id="mid_0" onChange="clickS(0)">
  <option value="0">请选择</option>
  <option value="中药">中药</option>
  <option value="西药">西药</option>
  <option value="其他">其他</option>
  <option value="hehe">hehe</option>
 </select>
</div>
</body>
</html>

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值