使用Javascript实现选择下拉菜单互移并排序


Posted in Javascript onFebruary 23, 2016

本文给大家介绍使用js实现下拉菜单可选择互相移动并实现菜单排序,代码简单易懂,具有参考价值,先给大家展示下效果图,感觉还很满意请参考本段代码。

使用Javascript实现选择下拉菜单互移并排序

代码如下:

<html>
<head>
<title>使用Javascript实现选择下拉菜单互移并排序</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<p>选定一项或多项然后点击添加或移除(按住shift或ctrl可以多选),或在选择项上双击进行添加和移除。</p>
<form method="post" name="myform">
<table border="0" width="300">
<tr>
<td width="40%">
<select style="width:100px; height:200px" multiple name="list1" size="12" ondblclick="moveOption(document.myform.list1, document.myform.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>
<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>
<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>
<option value="台湾">台湾</option>
<option value="其他">其他</option>
</select>
</td>
<td width="20%" align="center">
<input type="button" value=">>" onclick="moveOption(document.myform.list1, document.myform.list2)"><br />
<br />
<input type="button" value="<<" onclick="moveOption(document.myform.list2, document.myform.list1)">
</td>
<td width="40%">
<select style="width:100px; height:200px" multiple name="list2" size="12" ondblclick="moveOption(document.myform.list2, document.myform.list1)">
</select>
</td>
<td>
<button onclick="changepos(list2,-1)" type="button">
∧</button>
<br />
<button onclick="changepos(list2,1)" type="button">
∨</button>
</td>
</tr>
</table>
值:<input type="text" name="city" size="40">
</form>
<script language="JavaScript"> 
function moveOption(e1, e2) {
try {
for (var i = 0; i < e1.options.length; i++) {
var e = e1.options[i];
if (e1.options[i].selected&& OptionExists(e2, e.value)) {
e2.options.add(new Option(e.text, e.value));
e1.remove(i);
i = i - 1
}
}
document.myform.city.value = getvalue(document.myform.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))
}
}
else if (index == 1) {
if (obj.selectedIndex < obj.options.length - 1) {
obj.options(obj.selectedIndex).swapNode(obj.options(obj.selectedIndex + 1))
}
}
} 
//查询是否已经存在
function OptionExists(list, optValue) {
var find = true;
for (i = 0; i < list.options.length; i++) {
if (list.options[i].value == optValue) {
find = false;
break;
}
}
return find;
}
</script>
</body>
</html>

关于以上代码实现使用Javascript实现选择下拉菜单互移并排序的相关内容大家还很满意吧,代码有问题欢迎提出,我会及时和大家取得联系的!

Javascript 相关文章推荐
彪哥1.1(智能表格)提供下载
Sep 07 Javascript
JavaScript建立一个语法高亮输入框实现思路
Feb 26 Javascript
文本框中禁止非数字字符输入比如手机号码、邮编
Aug 19 Javascript
Jquery+asp.net后台数据传到前台js进行解析的方法
May 11 Javascript
jquery插件bxslider用法实例分析
Apr 16 Javascript
jQuery拖拽插件gridster使用指南
Apr 21 Javascript
JavaScript中的cacheStorage使用详解
Jul 29 Javascript
Java中Timer的用法详解
Oct 21 Javascript
javascript html实现网页版日历代码
Mar 08 Javascript
jQuery+pjax简单示例汇总
Apr 21 jQuery
微信小程序实现侧边栏分类
Oct 21 Javascript
JS如何实现手机端输入验证码效果
May 13 Javascript
jQuery拖拽排序插件制作拖拽排序效果(附源码下载)
Feb 23 #Javascript
JavaScript tab选项卡插件实例代码
Feb 23 #Javascript
Javascript技术栈中的四种依赖注入详解
Feb 23 #Javascript
JQuery+EasyUI轻松实现步骤条效果
Feb 22 #Javascript
全面解析Bootstrap布局组件应用
Feb 22 #Javascript
基于jQuery实现带动画效果超炫酷的弹出对话框(附源码下载)
Feb 22 #Javascript
JavaScript function函数种类详解
Feb 22 #Javascript
You might like
调整优化您的LAMP应用程序的5种简单方法
2011/06/26 PHP
PHP正确配置mysql(apache环境)
2011/08/28 PHP
PHP去掉从word直接粘贴过来的没有用格式的函数
2012/10/29 PHP
php递归json类实例
2014/12/02 PHP
PHP单文件上传原理及上传函数的封装操作示例
2019/09/02 PHP
PHP7.3.10编译安装教程
2019/10/08 PHP
javascript编程起步(第六课)
2007/01/10 Javascript
js怎么覆盖原有方法实现重写
2014/09/04 Javascript
每天一篇javascript学习小结(Array数组)
2015/11/11 Javascript
jQuery simpleModal插件的使用介绍
2016/08/30 Javascript
Ajax跨域实现代码(后台jsp)
2017/01/21 Javascript
angularjs实现的前端分页控件示例
2017/02/10 Javascript
JS与SQL方式随机生成高强度密码示例
2018/12/29 Javascript
Vue动态组件和异步组件原理详解
2019/05/06 Javascript
解决layui checkbox 提交多个值的问题
2019/09/02 Javascript
python实现汉诺塔方法汇总
2016/07/25 Python
Python有序查找算法之二分法实例分析
2017/12/11 Python
python机器学习之决策树分类详解
2017/12/20 Python
PyQt5每天必学之布局管理
2018/04/19 Python
python随机在一张图像上截取任意大小图片的方法
2019/01/24 Python
详解pandas的外部数据导入与常用方法
2019/05/01 Python
详解如何用python实现一个简单下载器的服务端和客户端
2019/10/28 Python
python django中8000端口被占用的解决
2019/12/17 Python
opencv 图像腐蚀和图像膨胀的实现
2020/07/07 Python
彻底解决pip下载pytorch慢的问题方法
2021/03/01 Python
HTML5 实战PHP之Web页面表单设计
2011/10/09 HTML / CSS
html5版canvas自由拼图实例
2014/10/15 HTML / CSS
项目开发计划书
2014/01/09 职场文书
旷课检讨书大全
2014/01/21 职场文书
中学生英语演讲稿
2014/04/26 职场文书
竞选班委演讲稿
2014/04/28 职场文书
债务纠纷委托书
2014/08/30 职场文书
市场营销工作计划书
2014/09/15 职场文书
幼儿园中班教师个人总结
2015/02/05 职场文书
心理健康教育主题班会
2015/08/13 职场文书
交互式可视化js库gojs使用介绍及技巧
2022/02/18 Javascript