两个Select互选的Javascript实现
2006-06-12 00:46 晓风残月 阅读(1101) 评论(0) 收藏 举报
自己用javascript写了一个两个select互选的,可多选,为了兼容IE和Firefox真是礼金千辛万苦 ,对Javascript和DOM还不是黑熟,参考了网上一些Demo,致谢!
,对Javascript和DOM还不是黑熟,参考了网上一些Demo,致谢!
 <html>
<html>
 <body>
<body>
 <div>
<div>
 <select id="oSelect1" name="Cars" size="10" multiple="multiple">
<select id="oSelect1" name="Cars" size="10" multiple="multiple">
 <option value="1">BMW</option>
<option value="1">BMW</option>
 <option value="2">Porsche</option>
<option value="2">Porsche</option>
 <option value="3" >Mercedes</option>
<option value="3" >Mercedes</option>
 </select>
</select>
 <input type="button" onclick="choose('oSelect1', 'oSelect2')" value=">>" />
<input type="button" onclick="choose('oSelect1', 'oSelect2')" value=">>" />
 <br />
<br />
 <input type="button" onclick="choose('oSelect2', 'oSelect1')" value="<<" />
<input type="button" onclick="choose('oSelect2', 'oSelect1')" value="<<" />
 <select id="oSelect2" name="Cars" size="10" multiple="multiple">
<select id="oSelect2" name="Cars" size="10" multiple="multiple">
 </select>
</select>
 </div>
</div>
 </body>
</body>
 </html>
</html>
 <script language="javascript" type="text/javascript">
<script language="javascript" type="text/javascript">  
 function choose(src, dst) {
    function choose(src, dst) {
 var oSelect1 = document.getElementById(src);
        var oSelect1 = document.getElementById(src);
 var oSelect2 = document.getElementById(dst);
        var oSelect2 = document.getElementById(dst);
 
        
 var opts = new Array();
        var opts = new Array();           
 var i;
        var i;                    
 
         
 for(i = 0; i < oSelect1.options.length; i++)
        for(i = 0; i < oSelect1.options.length; i++)
 {
        {            
 var item = oSelect1.options[i];
            var item = oSelect1.options[i];        
 if(item.selected) {
            if(item.selected) {
 opts.push(item);
               opts.push(item);                
 }
            }
 }
        }       
 
        
 for(i = 0; i < opts.length; i++)
        for(i = 0; i < opts.length; i++)
 {
        {            
 var opt = document.createElement("<option>");
            var opt = document.createElement("<option>");
 opt.text = opts[i].text;
            opt.text = opts[i].text;
 opt.value = opts[i].value;
            opt.value = opts[i].value;
 
            
 if(navigator.appName == 'Microsoft Internet Explorer') {
            if(navigator.appName == 'Microsoft Internet Explorer') {
 oSelect2.add(opt);
                oSelect2.add(opt);
 //oSelect2.add(opt, null); // IE 不支持
                //oSelect2.add(opt, null); // IE 不支持
 //oSelect2.appendChild(opt); // IE 不支持,可以添加,但是不显示,^||^
                //oSelect2.appendChild(opt); // IE 不支持,可以添加,但是不显示,^||^
 }
            }
 else {
            else {
 //oSelect2.add(opt);      // firefox 不支持
                //oSelect2.add(opt);      // firefox 不支持
 oSelect2.add(opt, null);
                oSelect2.add(opt, null);                
 //oSelect2.appendChild(opt); // firefox 支持
                //oSelect2.appendChild(opt); // firefox 支持
 }
            }
 oSelect1.removeChild(opts[i]);
            oSelect1.removeChild(opts[i]);                    
 }
        }
 }
    }   
 </script>
</script>
 
 ,对Javascript和DOM还不是黑熟,参考了网上一些Demo,致谢!
,对Javascript和DOM还不是黑熟,参考了网上一些Demo,致谢! <html>
<html> <body>
<body> <div>
<div> <select id="oSelect1" name="Cars" size="10" multiple="multiple">
<select id="oSelect1" name="Cars" size="10" multiple="multiple"> <option value="1">BMW</option>
<option value="1">BMW</option> <option value="2">Porsche</option>
<option value="2">Porsche</option> <option value="3" >Mercedes</option>
<option value="3" >Mercedes</option> </select>
</select> <input type="button" onclick="choose('oSelect1', 'oSelect2')" value=">>" />
<input type="button" onclick="choose('oSelect1', 'oSelect2')" value=">>" /> <br />
<br /> <input type="button" onclick="choose('oSelect2', 'oSelect1')" value="<<" />
<input type="button" onclick="choose('oSelect2', 'oSelect1')" value="<<" /> <select id="oSelect2" name="Cars" size="10" multiple="multiple">
<select id="oSelect2" name="Cars" size="10" multiple="multiple"> </select>
</select> </div>
</div> </body>
</body> </html>
</html> <script language="javascript" type="text/javascript">
<script language="javascript" type="text/javascript">   function choose(src, dst) {
    function choose(src, dst) { var oSelect1 = document.getElementById(src);
        var oSelect1 = document.getElementById(src); var oSelect2 = document.getElementById(dst);
        var oSelect2 = document.getElementById(dst); 
         var opts = new Array();
        var opts = new Array();            var i;
        var i;                     
          for(i = 0; i < oSelect1.options.length; i++)
        for(i = 0; i < oSelect1.options.length; i++) {
        {             var item = oSelect1.options[i];
            var item = oSelect1.options[i];         if(item.selected) {
            if(item.selected) { opts.push(item);
               opts.push(item);                 }
            } }
        }        
         for(i = 0; i < opts.length; i++)
        for(i = 0; i < opts.length; i++) {
        {             var opt = document.createElement("<option>");
            var opt = document.createElement("<option>"); opt.text = opts[i].text;
            opt.text = opts[i].text; opt.value = opts[i].value;
            opt.value = opts[i].value; 
             if(navigator.appName == 'Microsoft Internet Explorer') {
            if(navigator.appName == 'Microsoft Internet Explorer') { oSelect2.add(opt);
                oSelect2.add(opt); //oSelect2.add(opt, null); // IE 不支持
                //oSelect2.add(opt, null); // IE 不支持 //oSelect2.appendChild(opt); // IE 不支持,可以添加,但是不显示,^||^
                //oSelect2.appendChild(opt); // IE 不支持,可以添加,但是不显示,^||^ }
            } else {
            else { //oSelect2.add(opt);      // firefox 不支持
                //oSelect2.add(opt);      // firefox 不支持 oSelect2.add(opt, null);
                oSelect2.add(opt, null);                 //oSelect2.appendChild(opt); // firefox 支持
                //oSelect2.appendChild(opt); // firefox 支持 }
            } oSelect1.removeChild(opts[i]);
            oSelect1.removeChild(opts[i]);                     }
        } }
    }    </script>
</script>
 
                    
                     
                    
                 
                    
                

 
     
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号