jquery移动listbox的值原理及代码


Posted in Javascript onMay 03, 2013

jQuery操作listbox原理并不难,就是将listbox中的选中项进行移动,实现我们需要的移动效果。我在例子中使用了json数据结构来动态绑定listbox,这样也可以熟悉一下json的使用方法。

先看看简单的html,因为服务器控件会自动转换为html标签,所以在例子中,我并没有用服务器控件。如下:
<asp:ListBox></asp:ListBox>
会自动转换成:<select></select>
html代码如下:

<div style="width:240px;"> 
<div style="width:100px;float:left;"> 
<select size="4" name="listLeft" id="listLeft" class="normal"> 
</select> 
</div> 
<div style="width:40px;float:left; padding-top:20px;"> 
<input type="button" id="btnRight" value=">>" /><br /> 
<input type="button" id="btnLeft" value="<<" /> 
</div> 
<div style="width:100px;float:left;"> 
<select size="4" name="listRight" id="listRight" class="normal"> 
</select> 
</div> 
</div>

json数据结构如下:
//data 
var vData = { "datalist": 
[ 
{ "data": "jQuery", "text": "jQuery" }, 
{ "data": "Asp.net", "text": "Asp.net" }, 
{ "data": "internet", "text": "internet" }, 
{ "data": "Sql", "text": "Sql" } 
] 
};

下边就是jQuery实现代码,其中关键地方做了注释。
//bind data 
var vlist = ""; 
//遍历json数据 
jQuery.each(vData.datalist, function(i, n) { 
vlist += "<option value=" + n.data + ">" + n.text + "</option>"; 
}); 
//绑定数据到listLeft 
$("#listLeft").append(vlist); 
//left move 
$("#btnRight").click(function() { 
//数据option选中的数据集合赋值给变量vSelect 
var vSelect = $("#listLeft option:selected"); 
//克隆数据添加到listRight中 
vSelect.clone().appendTo("#listRight"); 
//同时移除listRight中的option 
vSelect.remove(); 
}); 
//right move 
$("#btnLeft").click(function() { 
var vSelect = $("#listRight option:selected"); 
vSelect.clone().appendTo("#listLeft"); 
vSelect.remove(); 
});
Javascript 相关文章推荐
js中parseFloat(参数1,参数2)定义和用法及注意事项
Jan 27 Javascript
禁用Tab键JS代码兼容Firefox和IE
Apr 18 Javascript
jQuery中:password选择器用法实例
Jan 03 Javascript
JS+CSS实现的拖动分页效果实例
May 11 Javascript
学习javascript文件加载优化
Feb 19 Javascript
Bootstrap零基础学习第一课之模板
Jul 18 Javascript
深入理解Javascript中的观察者模式
Feb 20 Javascript
详解AngularJS 路由 resolve用法
Apr 24 Javascript
详解原生js实现offset方法
Jun 15 Javascript
Vue+ElementUI实现表单动态渲染、可视化配置的方法
Mar 07 Javascript
JS打印彩色菱形的实例代码
Aug 15 Javascript
node.js基于dgram数据报模块创建UDP服务器和客户端操作示例
Feb 12 Javascript
使用Java实现简单的server/client回显功能的方法介绍
May 03 #Javascript
用原生JavaScript实现jQuery的$.getJSON的解决方法
May 03 #Javascript
基于KMP算法JavaScript的实现方法分析
May 03 #Javascript
JS动态获取当前时间,并写到特定的区域
May 03 #Javascript
JS实现商品倒计时实现代码
May 03 #Javascript
Javascript代码在页面加载时的执行顺序介绍
May 03 #Javascript
为什么要在引入的css或者js文件后面加参数的详细讲解
May 03 #Javascript
You might like
第1次亲密接触PHP5(1)
2006/10/09 PHP
PHP在引号前面添加反斜杠(PHP去除反斜杠)
2013/09/28 PHP
一个基于phpQuery的php通用采集类分享
2014/04/09 PHP
PHP实现的博客欢迎提示功能(很特别哦)
2014/06/05 PHP
PHP使用CURL_MULTI实现多线程采集的例子
2014/07/29 PHP
PHP中如何使用session实现保存用户登录信息
2015/10/20 PHP
PHP查看SSL证书信息的方法
2016/09/22 PHP
PHP以json或xml格式返回请求数据的方法
2018/05/31 PHP
js showModalDialog参数的使用详解
2014/01/07 Javascript
js实现横向百叶窗效果网页切换动画效果的方法
2015/03/02 Javascript
JavaScript中的Math.atan2()方法使用详解
2015/06/15 Javascript
jquery中取消和绑定hover事件的实现代码
2016/06/02 Javascript
全面了解javascript三元运算符
2016/06/27 Javascript
微信小程序 wx.request(object) API详解及实例代码
2016/09/30 Javascript
JS搜狐面试题分析
2016/12/16 Javascript
js 获取图像缩放后的实际宽高,位置等信息
2017/03/07 Javascript
JS实现上传图片的三种方法并实现预览图片功能
2017/07/14 Javascript
JavaScript常用截取字符串的三种方式用法区别实例解析
2018/05/15 Javascript
vue与原生app的对接交互的方法(混合开发)
2018/11/28 Javascript
微信小程序入口场景的问题集合与相关解决方法
2019/06/26 Javascript
基于Python函数的作用域规则和闭包(详解)
2017/11/29 Python
python实现录音小程序
2020/10/26 Python
解决Python一行输出不显示的问题
2018/12/03 Python
浅析Python 实现一个自动化翻译和替换的工具
2019/04/14 Python
pytorch 实现将自己的图片数据处理成可以训练的图片类型
2020/01/08 Python
python实现ssh及sftp功能(实例代码)
2020/03/16 Python
Python使用lambda抛出异常实现方法解析
2020/08/20 Python
使用简单的CSS3属性实现炫酷读者墙效果
2014/01/08 HTML / CSS
JD Sports德国官网:英国领先的运动鞋和运动服饰零售商
2018/02/26 全球购物
工程造价管理专业大专生求职信
2013/10/06 职场文书
土木工程师岗位职责
2013/11/24 职场文书
人民教师求职自荐信
2014/03/12 职场文书
机关会计岗位职责
2014/04/08 职场文书
2014个人四风对照检查材料思想汇报
2014/09/18 职场文书
2015年端午节活动策划书
2015/05/05 职场文书
学校证明范文
2015/06/24 职场文书