JavaScript实现下拉列表选择框

 更新时间:2021年10月11日 11:27:55   作者:莎蛋蛋的盖世英雄啊  
这篇文章主要为大家详细介绍了JavaScript实现下拉列表选择框,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了JavaScript实现下拉列表选择框的具体代码,供大家参考,具体内容如下

创建一个页面

** 两个下拉选择框
    - 设置属性 multiple属性 -multiple="multiple"(下拉选择框多行显示)
** 四个按钮,有事件

tip:多选按住ctrl或者shift点击选项

代码如下:

<html >
 <head>
   
  <title>HTML示例</title>
  <style type = "text/css">
  div#left{
 float:left;
  }
 
  </style>
 </head>
 <body>
 <div id="left" ">
  <div >
    <select id="select1" multiple="multiple" style="width:100px;height:1ss00px">
   <option>AAAAAA</option>
   <option>BBBBBB</option>
   <option>CCCCCC</option>
   <option>DDDDDD</option>
   <option>EEEEEE</option>
    </select><br/>
    </div>
 
    <div>
    <input type="button" value="选中添加到右边" onclick="selToRight()"/><br/>
    <input type="button" value="全部添加到右边" onclick="selAllRight()"/>
    </div>
   </div>
 
 <div id="right">
    <div >
    <select id="select2" multiple="multiple" style="width:100px;height:1ss00p">
  <option>FFFFFF</option>
    </select><br/>
    </div>
 
    <div>
    <input type="button" value="选中添加到左边" onclick="selToLeft()"/><br/>
    <input type="button" value="全部添加到左边" onclick="selAllLeft()"/>
    </div>
 </div>
 
 </body>
 <script type="text/javascript">
// 选中添加到左边
function selToLeft(){
 //获取左边select对象
  var s1 = document.getElementById("select1");
  //获取右边select对象
  var s2 = document.getElementById("select2");
  //得到左边select对象中的每一个option
  var ops = s2.getElementsByTagName("option");
  for(var i4=0;i4<ops.length;i4++){
   op4=ops[i4];
   if(op4.selected==true){
   s1.appendChild(op4);
   i4--;
   }
  }
}
 
 //全部添加到左边
  function selAllLeft(){
  //获取左边select对象
  var s1 = document.getElementById("select1");
  //获取右边select对象
  var s2 = document.getElementById("select2");
  //得到左边select对象中的每一个option
  var ops = s2.getElementsByTagName("option");
  for(var i3=0;i3<ops.length;i3++){
   op3=ops[i3];
   s1.appendChild(op3);
   i3--;
  }
 }
 //全部添加到右边
  function selAllRight(){
  //获取左边select对象
  var s1 = document.getElementById("select1");
  //获取右边select对象
  var s2 = document.getElementById("select2");
  //得到左边select对象中的每一个option
  var ops = s1.getElementsByTagName("option");
  for(var i2=0;i2<ops.length;i2++){
   op2=ops[i2];
   s2.appendChild(op2);
   i2--;
  }
 }
  //选中添加到右边
 function selToRight(){
  /*
   步骤:
   1.获取select里面的option
    -getElementByTagName()-返回一个数组
    -遍历数组,得到每一个option
   2.判断option是否被选中
    -属性selected,判断是否被选中
     -selected=true;选中
     -selected=false;未选中
   3.如果选中,把选中的添加到右边
   4.得到select2
   5.添加选择的部分
    -appendChild()方法
  */
  //获取左边select对象
  var s1 = document.getElementById("select1");
  //获取右边select对象
  var s2 = document.getElementById("select2");
  //得到左边select对象中的每一个option
  var ops = s1.getElementsByTagName("option");
  //遍历ops数组得到每一个option选中状态
  for(var i1=0;i1<ops.length;i1++){
   op1 = ops[i1];
   //判断每一个option中selected属性是否选中
   if(op1.selected == true){
    //如果选中,添加到右边select中
     //-使用appendChild()方法
    s2.appendChild(op1);
    //每次添加都会使数组长度减一,i1++后长度出现异常,所以我们要--;
    i1--;
   }
  }
 }
 
   </script>
 
</html>

效果图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • php register_shutdown_function函数详解

    php register_shutdown_function函数详解

    register_shutdown_function() 函数可实现当程序执行完成后执行的函数,其功能为可实现程序执行完成的后续操作,需要的朋友可以参考下
    2017-07-07
  • 详解JavaScript模块化开发

    详解JavaScript模块化开发

    一个模块就是实现特定功能的文件,有了模块,我们就可以更方便地使用别人的代码,想要什么功能,就加载什么模块。模块开发需要遵循一定的规范,否则就都乱套了
    2016-12-12
  • 为什么JavaScript没有块级作用域

    为什么JavaScript没有块级作用域

    这篇文章主要介绍了为什么JavaScript没有块级作用域的相关资料,需要的朋友可以参考下
    2016-05-05
  • 微信小程序实现搜索框功能

    微信小程序实现搜索框功能

    这篇文章主要为大家详细介绍了微信小程序实现搜索框功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • 请求时token过期自动刷新token操作

    请求时token过期自动刷新token操作

    这篇文章主要介绍了请求时token过期自动刷新token操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • 基于JavaScript实现网页版羊了个羊游戏

    基于JavaScript实现网页版羊了个羊游戏

    最近羊了个羊火的不得了,这篇文章主要为大家介绍了如何利用JS实现个网页版羊了个羊游戏,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2022-09-09
  • 微信小程序实现的picker多级联动功能示例

    微信小程序实现的picker多级联动功能示例

    这篇文章主要介绍了微信小程序实现的picker多级联动功能,结合实例形式分析了微信小程序picker组件使用及wx.request后台交互相关操作技巧,需要的朋友可以参考下
    2019-05-05
  • Axios get post请求传递参数的实现代码

    Axios get post请求传递参数的实现代码

    axios是基于promise用于浏览器和node.js的http客户端,支持浏览器和node.js,能拦截请求和响应,这篇文章主要介绍了axios get post请求传递参数的操作代码,需要的朋友可以参考下
    2022-11-11
  • ES5 模拟 ES6 的 Symbol 实现私有成员功能示例

    ES5 模拟 ES6 的 Symbol 实现私有成员功能示例

    这篇文章主要介绍了ES5 模拟 ES6 的 Symbol 实现私有成员功能,结合实例形式分析了ES5 模拟 ES6 的 Symbol 实现私有成员功能相关原理、实现方法与操作注意事项,需要的朋友可以参考下
    2020-05-05
  • Bootstrap框架安装使用详解

    Bootstrap框架安装使用详解

    这篇文章主要为大家详细介绍了Bootstrap框架的安装使用,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01

最新评论