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>

时间: 2024-08-04 20:39:50

Javascript版选择下拉菜单互移且排序的相关文章

javascript模拟select下拉菜单

javascript模拟select下拉菜单: 由于自带的select下拉菜单确实是不够美观,并且美化的潜力也不够大,所以对外观要求比较高的网站,基本都要使用自定义的select下拉菜单,下面就提供了一个简单的例子供大家参考,代码实例如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="

WPF 多项选择下拉菜单

背景 项目中有一个多项选择筛选的功能, 由于筛选条件太多, 用户又习惯在平板上进行操作, 所以要求我们把checkbox 放到一个combobox里面, 然后checkbox的选项要在combobox里面显示出来, 再加一个全选功能. 喏, 就是这种效果. 实现 首先, 实现思路是: 1. 自定义一个用户控件 2.添加一个combobox 3.重载combobox的item模板 4. 给模板中的checkbox添加点击事件. 思路确定了,就开始实现功能. 第一步 编辑xaml文件 <Grid>

选择下拉菜单显示和隐藏的实现

<html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> .menu:hover .menucontent{ display: block; } .menucontent{ width: 120px; display: none; text-align: center; border: 1px sol

一个常见下拉菜单的样式:一体化小三角(纯css手写解决)

类似下拉菜单2个一体化小三角,习惯上用字体图标加jQuery处理,比较方便,但是下面纯css手写解决方式,效果也还不错,对CSS知识也是一个比较好的孔固. 小三角用了2种不同处理方式:1.利用border属性:2.利用正方形选择45度. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>下拉菜单</title> <style> *{

DOM(十)使用DOM设置单选按钮、复选框、下拉菜单

1.设置单选按钮 单选按钮在表单中即<input type="radio" />它是一组供用户选择的对象,但每次只能选一个.每一个都有checked属性,当一项选择为ture时,其它的都变为false. 先贴沙漠化一个例子: <script type="text/javascript"> function getChoice() { var oForm = document.forms["uForm1"]; var aCh

如何实现导航菜单栏中的二级下拉菜单?

我们在淘宝.搜狐等大型网站上都可以看到使用的一些二级下拉菜单,比如下面这张图片. 但是如何实现类似的图片呢?实际上,我们有至少三种方式来实现,下面,我附上代码供大家参考. 1.仅使用html和css 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 <meta charset="UTF-8"> <title>Documen

下拉菜单的实现

CSS实现下拉菜单: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="author" content="宋添发" />        <meta name="Genarator" content="Sublime Text"

Android ActionBar中的下拉菜单

在ActionBar中添加下拉菜单,主要有一下几个关键步骤: 1. 生成一个SpinnerAdapter,设置ActionBar的下拉菜单的菜单项 2. 实现ActionBar.OnNavigationListener接口,当点击ActionBar的菜单项是进行相应的操作 3. 调用setNavigationMode()方法将ActionBar的操作模型设置为ActionBar.NAVIGATION_MODE_LIST. 注意:这个步骤应该在Activity的onCreate()回调函数时执行

Python+Selenium笔记(八):操作下拉菜单

(一) Select类 Select类是selenium的一个特定的类,用来与下拉菜单和列表交互. 下拉菜单和列表是通过HTML的<select> 元素实现的.选择项是通过<select>中的<option>元素实现的.使用前使用下面的语句导入模块. from selenium.webdriver.support.ui import Select (二) Select类的功能及方法 功能/属性 简单说明 all_selected_options 获取下拉菜单和列表中被选