使用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 相关文章推荐
使用JS操作页面表格,元素的一些技巧
Feb 02 Javascript
js创建数据共享接口——简化框架之间相互传值
Oct 23 Javascript
jquery按回车提交数据的代码示例
Nov 05 Javascript
js数组去重的常用方法总结
Jan 24 Javascript
回车直接实现点击某按钮的效果即触发单击事件
Feb 27 Javascript
jQuery获得页面元素的绝对/相对位置即绝对X,Y坐标
Mar 06 Javascript
jQuery基础知识小结
Dec 22 Javascript
运用js教你轻松制作html音乐播放器
Apr 17 Javascript
关于express与koa的使用对比详解
Jan 25 Javascript
ant design 日期格式化的实现
Oct 27 Javascript
antdesign-vue结合sortablejs实现两个table相互拖拽排序功能
Jan 08 Vue.js
JavaScript实现筛选数组
Mar 02 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
PHILIPS D1835/D1875的电路分析与打理
2021/03/02 无线电
php使用APC实现实时上传进度条功能
2015/10/26 PHP
一个简单的php路由类
2016/05/29 PHP
PHP Mysqli 常用代码集合
2016/11/12 PHP
PHP用户管理中常用接口调用实例及解析(含源码)
2017/03/09 PHP
pjblog修改技巧汇总
2007/03/12 Javascript
JavaScript 函数式编程的原理
2009/10/16 Javascript
jquery 问答知识整理
2010/02/11 Javascript
javascript时区函数介绍
2012/09/14 Javascript
利用JavaScript检测CPU使用率自己写的
2014/03/22 Javascript
jquery选择器排除某个DOM元素的方法(实例演示)
2014/04/25 Javascript
简单讲解AngularJS的Routing路由的定义与使用
2016/03/05 Javascript
js判断所有表单项不为空则提交表单的实现方法
2016/09/09 Javascript
vue移动端实现红包雨效果
2020/06/23 Javascript
vue如何进行动画的封装
2018/09/26 Javascript
koa2+vue实现登陆及登录状态判断
2019/08/15 Javascript
Bootstrap简单实用的表单验证插件BootstrapValidator用法实例详解
2020/03/29 Javascript
pycharm 使用心得(七)一些实用功能介绍
2014/06/06 Python
Python中变量交换的例子
2014/08/25 Python
python matplotlib坐标轴设置的方法
2017/12/05 Python
python实现将一维列表转换为多维列表(numpy+reshape)
2019/11/29 Python
PyTorch中model.zero_grad()和optimizer.zero_grad()用法
2020/06/24 Python
Python自省及反射原理实例详解
2020/07/06 Python
美国宠物美容和宠物用品购物网站:Cherrybrook
2018/12/07 全球购物
教师年度考核自我鉴定
2014/01/19 职场文书
留学经费担保书
2014/05/12 职场文书
疾病防治方案
2014/05/31 职场文书
手机被没收的检讨书
2014/10/04 职场文书
机关保密工作承诺书
2015/05/04 职场文书
预备党员考察意见范文
2015/06/01 职场文书
排球赛新闻稿
2015/07/17 职场文书
新闻稿件写作技巧
2015/07/18 职场文书
网吧员工管理制度
2015/08/05 职场文书
导游词之泉州崇武古城
2019/12/20 职场文书
Django debug为True时,css加载失败的解决方案
2021/04/24 Python
goland 设置project gopath的操作
2021/05/06 Golang