基于JavaScript实现下拉列表左右移动代码

发布时间 - 2026-01-10 22:54:48    点击率:

废话不多说,先给大家展示一下效果图,如果大家感觉不错,请参考实现代码。

效果图如下所示:

代码如下所示:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>选择式下拉菜单</title> 
<script language="javascript" type="text/javascript">  
  function moveOption(e1, e2){  
    try{  
      for(var i=0;i<e1.options.length;i++){  
        if(e1.options[i].selected){  
          var e = e1.options[i];  
          e2.options.add(new Option(e.text, e.value));  
          e1.remove(i);  
          ii=i-1; 
        }  
      }  
      document.form1.city.value=getvalue(document.form1.list2);  
    }catch(e){ 
     }  
  }  
   function getvalue(geto){  
    var allvalue = "";  
    for(var i=0;i<geto.options.length;i++){  
      allvalue +=geto.options[i].value + ",";  
    }  
    return allvalue;  
  } 
   function changepos(obj,index)  
  {  
    if(index==-1){  
      if (obj.selectedIndex>0){  
        //obj.options(obj.selectedIndex).swapNode(obj.options(obj.selectedIndex-1)) //swapNode方法只有IE才支持 
        obj.insertBefore(obj.options[obj.selectedIndex], obj.options[obj.selectedIndex - 1]);  
      }  
    }else if(index==1){  
      if (obj.selectedIndex<obj.options.length-1){  
        //obj.options(obj.selectedIndex).swapNode(obj.options(obj.selectedIndex+1)) //swapNode方法只有IE才支持 
        obj.insertBefore(obj.options[obj.selectedIndex + 1], obj.options[obj.selectedIndex]);   
      }  
    }  
  }  
</script> 
<style type="text/css"> 
body { 
  font-size: 16px; 
  color: #003300; 
} 
</style> 
</head> 
<body> 
<form method="post" name="form1" action="" style="text-align:center;"> 
 <table border="0" width="300" align="center"> 
  <tr> 
   <td width="40%"><select style="width:100%" multiple name="list1" size="12" ondblclick="moveOption(document.form1.list1, document.form1.list2)"> 
     <option value="张三">张三</option> 
     <option value="李四">李四</option> 
     <option value="王五">王五</option> 
     <option value="赵六">赵六</option> 
     <option value="钱七">钱七</option> 
     <option value="软件">软件</option> 
     <option value="客服">客服</option> 
     <option value="硬件">硬件</option> 
     <option value="安全">安全</option> 
     <option value="会计">会计</option> 
     <option value="出纳">出纳</option> 
    </select></td> 
   <td width="20%" align="center"><input type="button" value="添加" onclick="moveOption(document.form1.list1, document.form1.list2)"/> 
    <br/> 
    <br/> 
    <input type="button" value="删除" onclick="moveOption(document.form1.list2, document.form1.list1)"/></td> 
   <td width="40%"><select style="width:100%" multiple name="list2" size="12" ondblclick="moveOption(document.form1.list2, document.form1.list1)"> 
    </select></td> 
   <td><input type="button" value="上移" onclick="changepos(list2,-1)"/> 
    <br/> 
    <br/> 
    <input type="button" value="下移" onclick="changepos(list2,1)"/></td> 
  </tr> 
 </table> 
 值: 
 <input type="text" name="city" size="40" /> 
</form> 
<p align="center">选定一项或多项然后点击添加或移除(按住shift或ctrl可以多选),<br /> 
 或在选择项上双击进行添加和移除。</p> 
</body> 
</html> 

以上所述是小编给大家介绍的基于JavaScript实现下拉列表左右移动,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# js  # 下拉列表  # 下拉列表移动  # AngularJS使用ngOption实现下拉列表的实例代码  # JS设置下拉列表框当前所选值的方法  # js实现下拉列表选中某个值的方法(3种方法)  # javascript下拉列表中显示树形菜单的实现方法  # 用JavaScript来美化HTML的select标签的下拉列表效果  # jquery用ajax方式从后台获取json数据后如何将内容填充到下拉列表  # javascript实现在下拉列表中显示多级树形菜单的方法  # 客服  # 所示  # 小编  # 移除  # 李四  # 王五  # 在此  # 给大家  # 双击  # 多项  # 多说  # 所述  # 给我留言  # 请参考  # 感谢大家  # 先给  # 多选  # 疑问请  # 有任何  # Content 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何实现API版本控制_Laravel API版本化路由设计策略  悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音  Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程  php读取心率传感器数据怎么弄_php获取max30100的心率值【指南】  实例解析Array和String方法  Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程  EditPlus中的正则表达式实战(6)  Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程  如何注册花生壳免费域名并搭建个人网站?  如何在建站之星网店版论坛获取技术支持?  Laravel路由怎么定义_Laravel核心路由系统完全入门指南  如何利用DOS批处理实现定时关机操作详解  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  如何在腾讯云免费申请建站?  php在windows下怎么调试_phpwindows环境调试操作说明【操作】  Bootstrap整体框架之CSS12栅格系统  PHP 500报错的快速解决方法  Laravel如何与Inertia.js和Vue/React构建现代单页应用  高防服务器租用首荐平台,企业级优惠套餐快速部署  JavaScript如何实现类型判断_typeof和instanceof有什么区别  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  Python正则表达式进阶教程_复杂匹配与分组替换解析  如何确保FTP站点访问权限与数据传输安全?  通义万相免费版怎么用_通义万相免费版使用方法详细指南【教程】  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  🚀拖拽式CMS建站能否实现高效与个性化并存?  如何用AWS免费套餐快速搭建高效网站?  ,南京靠谱的征婚网站?  Claude怎样写约束型提示词_Claude约束提示词写法【教程】  如何快速搭建虚拟主机网站?新手必看指南  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】  Laravel事件监听器怎么写_Laravel Event和Listener使用教程  Python文本处理实践_日志清洗解析【指导】  香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧  成都网站制作公司哪家好,四川省职工服务网是做什么用?  Linux系统命令中screen命令详解  Laravel如何处理JSON字段的查询和更新_Laravel JSON列操作与查询技巧  千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】  如何快速搭建高效可靠的建站解决方案?  Laravel怎么使用Session存储数据_Laravel会话管理与自定义驱动配置【详解】  如何快速建站并高效导出源代码?  如何快速生成ASP一键建站模板并优化安全性?  PHP正则匹配日期和时间(时间戳转换)的实例代码  如何批量查询域名的建站时间记录?  如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环  Laravel怎么清理缓存_Laravel optimize clear命令详解  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】  Laravel怎么解决跨域问题_Laravel配置CORS跨域访问  如何在 Pandas 中基于一列条件计算另一列的分组均值