您的位置:首页 > 其它

动态删除、创建select

2012-10-24 15:39 176 查看
//创建select

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

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

//赋值

 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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: