JavaScript实现下拉列表框数据增加、删除、上下排序的方法


Posted in Javascript onAugust 11, 2015

本文实例讲述了JavaScript实现下拉列表框数据增加、删除、上下排序的方法。分享给大家供大家参考。具体如下:

这里实现在一个支持多选的下拉列表框内进行数据项的添加、删除、向上、向下移动操作,我们在一些人才网站或是编程技术站经常会看到这种功能,比较实用。

运行效果截图如下:

JavaScript实现下拉列表框数据增加、删除、上下排序的方法

具体代码如下:

<title>下拉列表数据上下排序</title>
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
function move(fbox,tbox) {
var i = 0;
if(fbox.value != "") {
var no = new Option();
no.value = fbox.value;
no.text = fbox.value;
tbox.options[tbox.options.length] = no;
fbox.value = "";
  }
}
function remove(box) {
for(var i=0; i<box.options.length; i++) {
if(box.options[i].selected && box.options[i] != "") {
box.options[i].value = "";
box.options[i].text = "";
  }
}
BumpUp(box);
} 
function BumpUp(abox) {
for(var i = 0; i < abox.options.length; i++) {
if(abox.options[i].value == "") {
for(var j = i; j < abox.options.length - 1; j++) {
abox.options[j].value = abox.options[j + 1].value;
abox.options[j].text = abox.options[j + 1].text;
}
var ln = i;
break;
  }
}
if(ln < abox.options.length) {
abox.options.length -= 1;
BumpUp(abox);
  }
}
function Moveup(dbox) {
for(var i = 0; i < dbox.options.length; i++) {
if (dbox.options[i].selected && dbox.options[i] != "" && dbox.options[i] != dbox.options[0]) {
var tmpval = dbox.options[i].value;
var tmpval2 = dbox.options[i].text;
dbox.options[i].value = dbox.options[i - 1].value;
dbox.options[i].text = dbox.options[i - 1].text
dbox.options[i-1].value = tmpval;
dbox.options[i-1].text = tmpval2;
   }
  }
}
function Movedown(ebox) {
for(var i = 0; i < ebox.options.length; i++) {
if (ebox.options[i].selected && ebox.options[i] != "" && ebox.options[i+1] != ebox.options[ebox.options.length]) {
var tmpval = ebox.options[i].value;
var tmpval2 = ebox.options[i].text;
ebox.options[i].value = ebox.options[i+1].value;
ebox.options[i].text = ebox.options[i+1].text
ebox.options[i+1].value = tmpval;
ebox.options[i+1].text = tmpval2;
   }
  }
}
// End -->
</script>
<form ACTION="" METHOD="POST">
<table>
<tr>
<td>
<input type="button" value="增加" onclick="move(this.form.list1,this.form.list2)" name="B1"><br>
<input type="button" value="删除" onclick="remove(this.form.list2)" name="B2"><br>
<input type="button" value="向上" onclick="Moveup(this.form.list2)" name="B3"><br>
<input type="button" value="向下" onclick="Movedown(this.form.list2)" name="B4">
</td>
<td>
<select multiple size=7 name="list2">
<option value="one">ASP</option>
<option value="two">PHP</option>
<option value="three">ASP.NET</option>
<option value="four">JAVA</option>
<option value="five">DELPHI</option>
</select>
</td>
</tr>
<tr>
<td>
<input type="text" name="list1" value="">
</td></tr>
</table>
</form>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
js 函数调用模式小结
Dec 26 Javascript
js过滤HTML标签以及空格的思路及代码
May 24 Javascript
JS 获取滚动条高度示例代码
Oct 24 Javascript
JavaScript获取网页中第一个图片id的方法
Apr 03 Javascript
理解javascript中try...catch...finally
Dec 25 Javascript
Node.js的项目构建工具Grunt的安装与配置教程
May 12 Javascript
Vue组件开发初探
Feb 14 Javascript
详解vue组件化开发-vuex状态管理库
Apr 10 Javascript
微信小程序 跳转传递数据的实例
Jul 06 Javascript
vue2中使用less简易教程
Mar 27 Javascript
JavaScript实现手机号码 3-4-4格式并控制新增和删除时光标的位置
Jun 02 Javascript
vue-router 按需加载 component: () =&gt; import() 报错的解决
Sep 22 Javascript
iframe跨域通信封装详解
Aug 11 #Javascript
javascript实现选中复选框后相关输入框变灰不可用的方法
Aug 11 #Javascript
JS+CSS实现美化的下拉列表框效果
Aug 11 #Javascript
localResizeIMG先压缩后使用ajax无刷新上传(移动端)
Aug 11 #Javascript
JavaScript设置表单上传时文件个数的方法
Aug 11 #Javascript
js限制文本框只能输入中文的方法
Aug 11 #Javascript
JS实现点击复选框将按钮或文本框变为灰色不可用的方法
Aug 11 #Javascript
You might like
PHP获取网址的顶级域名函数代码
2012/09/24 PHP
php 模拟get_headers函数的代码示例
2013/04/27 PHP
如何让CI框架支持service层
2014/10/29 PHP
PHP搭建大文件切割分块上传功能示例
2017/01/04 PHP
浅析PHP echo 和 print 语句
2020/06/30 PHP
JS 统计时间
2021/03/09 Javascript
JQuery从头学起第三讲
2010/07/06 Javascript
JavaScript 拾碎[三] 使用className属性
2010/10/16 Javascript
JS实现选中当前菜单后高亮显示的导航条效果
2015/10/15 Javascript
jQuery实现彩带延伸效果的网页加载条loading动画
2015/10/29 Javascript
JavaScript通过HTML的class来获取HTML元素的方法总结
2016/05/24 Javascript
bootstrap按钮插件(Button)使用方法解析
2017/01/13 Javascript
Node.js Express 框架 POST方法详解
2017/01/23 Javascript
js实现常见的工具条效果
2017/03/02 Javascript
10个在JavaScript开发中常遇到的BUG
2017/12/18 Javascript
jQuery简单实现向列表动态添加新元素的方法示例
2017/12/25 jQuery
用jquery获取select标签中选中的option值及文本的示例
2018/01/25 jQuery
详解如何在微信小程序中愉快地使用sass
2018/07/30 Javascript
Angular 2使用路由自定义弹出组件toast操作示例
2019/05/10 Javascript
JavaScript JSON使用原理及注意事项
2020/07/30 Javascript
python实现异步回调机制代码分享
2014/01/10 Python
Python深入学习之闭包
2014/08/31 Python
Python中的进程分支fork和exec详解
2015/04/11 Python
Python类的定义、继承及类对象使用方法简明教程
2015/05/08 Python
用Python操作字符串之rindex()方法的使用
2015/05/19 Python
Python列出一个文件夹及其子目录的所有文件
2016/06/30 Python
Selenium+Python 自动化操控登录界面实例(有简单验证码图片校验)
2019/06/28 Python
python实现几种归一化方法(Normalization Method)
2019/07/31 Python
python框架flask入门之路由及简单实现方法
2020/06/07 Python
Talbots官网:美国成熟女装品牌
2019/11/15 全球购物
shell程序中如何注释
2012/02/17 面试题
中专生职业生涯规划书范文
2013/12/29 职场文书
先进人物事迹材料
2014/12/29 职场文书
医院保洁员管理制度
2015/08/05 职场文书
MySQL 如何分析查询性能
2021/05/12 MySQL
微信小程序调用python模型
2022/04/21 Python