<meta http-equiv="content-type" content="text/html; charset=UTF-8">

 <script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>

 <script type="text/javascript">
/**
* 向上移动选中的option
*/
function upSelectedOption() {
if (null == $('#where').val()) {
alert('请选择一项');
return false;
}
//选中的索引,从0开始
var optionIndex = $('#where').get(0).selectedIndex;
//如果选中的不在最上面,表示可以移动
if (optionIndex > 0) {
$('#where option:selected').insertBefore($('#where option:selected').prev('option'));
}
} /**
* 向下移动选中的option
*/
function downSelectedOption() {
if (null == $('#where').val()) {
alert('请选择一项');
return false;
}
//索引的长度,从1开始
var optionLength = $('#where')[0].options.length;
//选中的索引,从0开始
var optionIndex = $('#where').get(0).selectedIndex;
//如果选择的不在最下面,表示可以向下
if (optionIndex < (optionLength - 1)) {
$('#where option:selected').insertAfter($('#where option:selected').next('option'));
}
} /**
* 移除选中的option
*/
function removeSelectedOption() {
if (null == $('#where').val()) {
alert('请选择一项');
return false;
}
$('#where option:selected').remove();
} /**
* 获取所有的option值
*/
function getSelectedOption() {
//获取Select选择的Text
var checkText = $('#where').find('option:selected').text();
//获取Select选择的Value
var checkValue = $('#where').val();
alert('当前被选中的text=' + checkText + ', value=' + checkValue);
var ids = '';
var options = $('#where')[0].options;
for (var i = 0; i < options.length; i++) {
ids = ids + '`' + options[i].id;
}
alert('当前被选中的编号顺序为' + ids);
} /**
* 添加option
*/
function addSelectedOption() {
//添加在第一个位置
$('#where').prepend('<option value="hbin" id="where06">Haerbin</option>');
//添加在最后一个位置
$('#where').append('<option value="hlj" id="where07">HeiLongJiang</option>');
$('#where').attr('size', 7);
}
</script> <div id="updown">
<select id="where" name="where" size="5">
<option value="hk" id="where01">Hong Kong</option>
<option value="tw" id="where02">Taiwan</option>
<option value="cn" id="where03">China</option>
<option value="us" id="where04">United States</option>
<option value="ca" id="where05">Canada</option>
</select>
</div>
<br/>
<input type="button" value="上移" onclick="upSelectedOption()"/>
<input type="button" value="下移" onclick="downSelectedOption()"/>
<input type="button" value="删除" onclick="removeSelectedOption()"/>
<input type="button" value="确定" onclick="getSelectedOption()"/>
<input type="button" value="添加" onclick="addSelectedOption()"/>

效果图:

下拉框上移、下移、添加、移除demo的更多相关文章

  1. 动态加载下拉框列表并添加onclick事件

    1.  js动态加载元素并设置属性 摘自(http://www.liangshunet.com/ca/201408/336848696.htm) <div id="parent&quo ...

  2. select下拉框之默认选项清空

    最近和小伙伴发现,select默认选项一般是提示信息,怎么才能让当我们点击下拉框时,可选的选项中没有默认的提示信息呢? 思路: 1.当点击下拉框时,让默认提示信息,即下拉框第一个选项移除. 2.当没有 ...

  3. Selenium实战总结(webwiew下拉框定位)

    基于常见的两种下拉框的展示形式: 1.点击弹出下拉框: 2.鼠标移动弹出下拉框(move_to_element) 实例一[鼠标点击弹出的下拉框]: e.g百度首页的设置--高级搜索--时间: 导包: ...

  4. 自定义SWT控件四之其它下拉框

    4.其它下拉框 4.1 添加联动二级多选择框(有添加按钮和删除按钮) package com.view.control.select; import java.util.ArrayList; impo ...

  5. jq select change下拉框选项变化判断选中值,添加(attr)或移除(removeAttr)一个或多个属性

    select change下拉框选项变化判断选中值,添加(attr)或移除(removeAttr)一个或多个属性 $("#IsRecommend").change(function ...

  6. Html下拉框的定义以及JS、Jquary取值、添加和移除

    现在有一id=test的下拉框,怎么拿到选中的那个值呢? 分别使用javascript原生的方法和jquery方法 <select id="test"  name=" ...

  7. JavaScript 下拉框 左边添加至右边

    关于如何实现右边下拉框中选项的排序一时没有好的解决方法,等想到了回来补充 <!DOCTYPE html> <html> <head> <meta charse ...

  8. 通过jquery来实现文本框和下拉框动态添加效果,能根据自己的需求来自定义最多允许添加数量,实用的jquery动态添加文本框特效

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. JavaScript向select下拉框中添加和删除元素

    JavaScript向select下拉框中添加和删除元素 1.说明 a   利用append()方法向下拉框中添加元素 b   利用remove()方法移除下拉框中最后一个元素 2.设计源码 < ...

随机推荐

  1. block 和delegate的用法

    //block 和delegate的用法 设置代理 #import <UIKit/UIKit.h> typedef void (^ASIHeadersBlock)(NSString *my ...

  2. SQL语句操作大全

    SQL语句操作大全   本文分为以下六个部分: 基础部分 提升部分 技巧部分 数据开发–经典部分 SQL Server基本函数部分 常识部分 一.基础 1.说明:创建数据库CREATE DATABAS ...

  3. 【RabbitMQ】 Routing

    Routing 之前的章节里我们构建了一个简单的日志系统.我们可以广播所有的日志消息给所有的接收端. 本节我们将给它添加一个新特性 - 我们将允许只订阅一个消息的子集.例如,我们只将关键的错误消息定位 ...

  4. ExtJS 4 类系统

    ExtJS 4的类系统(class system)进行了一次重大重构,ExtJS4的新架构就是基于这套新的类系统构建的,因此有必要先了解以下这个class system这篇文章分为四章 I: &quo ...

  5. 关于git服务器的搭建

    Git 服务器可搭建在多个系统平台上. 本篇以 Windows 和 Ubuntu 系统为例,简单介绍 Git 服务器的构建. 最后使用 eclipse 的 egit 插件和 git clone 这两种 ...

  6. hadoop job执行完的统计信息

    Total committed heap usage (bytes)= Physical memory (bytes) snapshot= Virtual memory (bytes) snapsho ...

  7. BZOJ 1018 堵塞的交通

    Description 有一天,由于某种穿越现象作用,你来到了传说中的小人国.小人国的布局非常奇特,整个国家的交通系统可以被看成是一个2行C列的矩形网格,网格上的每个点代表一个城市,相邻的城市之间有一 ...

  8. c# 类;一维数组;二维数组

    1. 输入邮箱帐号,判断格式是否正确  (1)有且只有一个@          Contains IndexOf ==LastIndexOf  (2)不能以@开头           StartsWi ...

  9. 13. vs2010 ClientID bug处理

    在VS2010中的产生ClientID有几种方式,每个控件或页面有个ClientIDMode属性,可以用来决定产生ClientID的方式,它有AutoID,Static,Inherit,Predict ...

  10. MySql的大小写问题

    原来Linux下的MySQL默认是区分表名大小写的,通过如下设置,可以让MySQL不区分表名大小写:1.用root登录,修改 /etc/my.cnf:2.在[mysqld]节点下,加入一行: lowe ...