美文网首页
JS实现左右下拉框动态增删

JS实现左右下拉框动态增删

作者: 扒块腹肌 | 来源:发表于2017-02-05 15:19 被阅读142次

选中下拉框中的选项实现左移右移

效果:
效果图.gif
1. Html部分代码
<body>
<table align="center">
    <tr>
        <td ><select size="15" id="left" >
            <option>左1</option>
            <option>左2</option>
            <option>左3</option>
            <option>左4</option>
            <option>左5</option>
            <option>左6</option>
            <option>左7</option>
            <option>左8</option>
            <option>左9</option>
            <option>左10</option>
        </select></td>

        <td>
            <input type="button" value="MoveRight" onclick="moveRight()"><br>
            <input type="button" value="MoveAllRight" onclick="moveAllright()"/><br>
            <input type="button" value="MoveLeft" onclick="moveLeft()"><br>
            <input type="button" value="MoveAllLeft" onclick="moveAllLeft()"><br>
        </td>


        <td>
            <select size="15" id="right">
                <option>右1</option>
                <option>右2</option>
                <option>右3</option>
                <option>右4</option>
                <option>右5</option>
                <option>右6</option>
                <option>右7</option>
            </select>
        </td>

        <td></td>
    </tr>

    </table>

</body>

2. JavaScript脚本代码如下:
    <script type="text/javascript">
      function  moveRight()
      {
          //获取左边select元素节点
          var leftSelectNode = document.getElementById("left");
          //获取子元素节点数组
          //如果选定的索引号为-1,则提示用户
          if (leftSelectNode.selectedIndex == -1)
          {
              alert("请选定需要移动的选项");
              return;
          }
          //获取待移动的选项
          var waitSelection = leftSelectNode.options[leftSelectNode.selectedIndex];
          //获取右边的selec元素节点并加入
          var rightSelectNode = document.getElementById("right");
          //右边新增一个节点
          rightSelectNode.appendChild(waitSelection);

      }

      function  moveAllright()
      {//获取select对象
          var leftSelectNode = document.getElementById("left");
          var rightSelectNode = document.getElementById("right");

          var optionsNodes = leftSelectNode.options;

          var length = optionsNodes.length;
          for (var i = 0; i < length; i++)
          {
              rightSelectNode.appendChild(optionsNodes[0]);
          }
      }

      function  moveLeft()
      {
          //获取左边的select对象
        var rightSelectNode = document.getElementById("right");
        //没有选中则提示
          if (rightSelectNode.selectedIndex == -1)
          {
              alert("请选择一个选项");
              return;
          }
          //获取待移动的选项
          var waitMoveNode = rightSelectNode.options[rightSelectNode.selectedIndex];
          //获取左边的select对象
          var leftSelectNode = document.getElementById("left");

          //左边的select对象加入节点
          leftSelectNode.appendChild(waitMoveNode);

      }
      function  moveAllLeft()
      {
          //获取右边的select对象
          var rightSelectNode = document.getElementById("right");
          var leftSelectNode = document.getElementById("left");

         var length = rightSelectNode.options.length;

          //遍历其option选项并加入到左边的select中
          for (var i = 0; i < length; i++)
          {
              leftSelectNode.appendChild(rightSelectNode.options[0]);
          }
      }

    </script>
3.CSS简单代码如下:
    <style>
        select, td
        {
            font:20px/40px '宋体';
        }
        option  {width: 100px;
            font:20px/40px '宋体';
        }
        input {
            padding: 3px;
            font:20px/40px '宋体';
            text-align: center;
            width: 130px;
            height: 40px;
            background-color: orange;
        }
    </style>

相关文章

  • JS实现左右下拉框动态增删

    选中下拉框中的选项实现左移右移 效果: 1. Html部分代码 2. JavaScript脚本代码如下: 3.CS...

  • JS实现动态增删表格

    在上方文本框填入"姓名/Email/ 年龄",实现在下方表格中动态添加或删除单元格 效果: 1. Html代码: ...

  • JavaScript

    一、js的作用 js能动态修改(增删)html和css的代码 能动态的校验数据 二、js特点:# 交互性 安全性,...

  • 前端 Bug 记录

    Bootstrap Select-Selectpicker 消失 例:Js 动态添加表格内容,下拉框消失 解决办法...

  • Layui如何动态加载下拉框

    实现效果如下所示: 弹窗代码 动态加载下拉框代码 关键代码:

  • vue 实现下拉框动态获取年份

    最近项目里需要用到下拉框来动态获取年份,网上找的时候大部分都是js写的,这里记录下用vue来实现。 项目需求:下拉...

  • 前端,关于下拉选择

    select标签构成的下拉框和jquery通过js构建的下拉框用法一样。例如: html下拉框: js控制的下拉框...

  • easyui常用方法

    1、下拉框“商品列表”实现 2、下拉框“客户列表”实现 3、下拉框“系统用户”实现 4、下拉框“物流公司”实现

  • JS中动态增删改元素

    在JS中动态增删改元素 document.createElement 创建元素对象 document.create...

  • 2019-05-22 自定义实现下拉框的三级联动

    一个简单的三级联动下拉框的实现: css文件: html文件: js文件: 最终效果图: 注:要实现js效果,需要...

网友评论

      本文标题:JS实现左右下拉框动态增删

      本文链接:https://www.haomeiwen.com/subject/pmjeittx.html