web前端|js教程
jQuery,下拉框
web前端-js教程
就是实现这个效果的,选中添加到右边,全部添加到右边,选中删除到左边,全部删除到左边。
html部分:
mvc通用权限管理源码,ubuntu不显示蓝牙,tomcat服务启动空指针,爬虫工作优势,php实现事务控制,延庆区一站式seo服务销售价格lzw
经典网游源码,ubuntu18.04入门,tomcat数据库文件,搜集图片的爬虫,php写的主要开源软件,seo593lzw
选项1
选项2
选项3
选项4
选项5
选项6
选项7
当面付全套源码,ubuntu怎么恢复分区,tomcat服务器占内存,QQ空间好友 爬虫,php流程控制语句实验心得,英山seo公司lzw
选中添加到右边>>
全部添加到右边>>
选项8
<<选中删除到左边
<<全部删除到左边 这里要注意的是select的multiple属性,只有添加了之后,才会在select框中出现多个select选项。
否则只会显示出一条。
jQuery代码解析:
$(function(){
//移到右边
$(#add).click(function() {
//获取选中的选项,删除并追加给对方
$(#select1 option:selected).appendTo(#select2);
});
//移到左边
$(#remove).click(function() {
$(#select2 option:selected).appendTo(#select1);
});
//全部移到右边
$(#add_all).click(function() {
//获取全部的选项,删除并追加给对方
$(#select1 option).appendTo(#select2);
});
//全部移到左边
$(#remove_all).click(function() {
$(#select2 option).appendTo(#select1);
});
//双击选项
$(#select1).dblclick(function(){ //绑定双击事件
//获取全部的选项,删除并追加给对方
$("option:selected",this).appendTo(#select2); //追加给对方
});
//双击选项
$(#select2).dblclick(function(){
$("option:selected",this).appendTo(#select1);
});
});
这里要注意的是$(“option:selected”,this)。这个看起来有点奇怪。其实$()有2个参数,一个是选择器,一个是作用域。 要和$(“xxxx,xxx”)区分。通常意义下的$(‘xxxx’)其实是默认了第二个作用域。完整说应该是$(‘xxxx’,document)。这里加上this之后,作用域就限制在#select1中或#select2中了。也就是select1中的选中项被添加到#select2的后面。
效果类似于$(“#select1 option:selected”)。
如果不加上,this这个参数的话,就会牵扯到全局中的选中项。就会出错。
注意点2:
append()与appendTo()方法的区别。
append(content|fn)向每个匹配的元素内部追加内容。
appendTo(content)把所有匹配的元素追加到另一个指定的元素元素集合中。
前者是向匹配的元素中添加内容的,后者是把匹配的素有元素追加到另一个指定的元素集合中的。
比如$(“p”).append(“Hello“);是向p元素中追加内容Hello。
原来的p元素内容:
I would like to say:
现在的p元素内容:[
I would like to say: Hello
]$(“p”).appendTo(“div”);将p元素追加到div元素中。原来的内容:
I would like to say:
结果:
I would like to say:
I would like to say: