jquery 书本上的一个例子

书本上只写了从左边添加到右边,无非就是remove() 方法和 appendTo() 方法。

然而,我试过了,并不能像从左边添加到右边那样简单的把右边的删除到左边过来。

然后自己整了一份可以两边任意添加到对方的。

HTML代码如下:

<div class="equips">
<div>
<p class="tips">您正在对用户: XXX 分配设备!</p>
<a href="#" class="btn" id="save_equip">保存</a>
</div> <form class="equip_list" id="equip_list">
<span class="show">可选设备列表:</span>
<ul>
<li>
<input type="text" name="equips" value="设备1">
</li>
<li>
<input type="text" name="equips" value="设备2设备2设备2">
</li>
<li>
<input type="text" name="equips" value="设备3">
</li>
<li>
<input type="text" name="equips" value="设备4"> </li>
<li>
<input type="text" name="equips" value="设备5">
</li>
<li>
<input type="text" name="equips" value="设备6">
</li>
<li>
<input type="text" name="equips" value="设备7">
</li>
<li>
<input type="text" name="equips" value="设备8">
</li>
</ul>
</form>
<form action="url" method="post" class="my_equip_list" id="my_equip_list">
<span class="show">用户设备列表:</span>
<ul>
<li>
<input type="text" name="equips" value="设备a">
</li>
<li>
<input type="text" name="equips" value="设备s">
</li>
<li>
<input type="text" name="equips" value="设备d">
</li>
<li>
<input type="text" name="equips" value="设备f">
</li>
<li>
<input type="text" name="equips" value="设备g">
</li>
<li>
<input type="text" name="equips" value="设备h">
</li>
</ul>
</form>
<div class="btns">
<a href="#" class="btn" id="btn_add">增加>></a>
<a href="#" class="btn" id="btn_remove"><<删除</a>
</div>
</div>

jQuery代码如下:

$(function(){
init(); // 初始化 $("#btn_add").on("click", function(){ // 添加按钮 左边列表里面的选项,添加到右边中
var param = {
form_ul : $("#my_equip_list ul"),
li_selected : $("#equip_list ul li.selected")
}
selected(param);
}); $("#btn_remove").on("click", function(){ //删除按钮, 将右边框选中的添加到左边框中
var param = {
form_ul : $("#equip_list ul"),
li_selected : $("#my_equip_list ul li.selected")
}
selected(param);
}); // 设置表单中的input框都是只读状态
$(".equips form input").attr("readonly", "readonly"); // 点击保存, 提交用户设备列表表单
$("#save_equip").on("click", function(){
$("#my_equip_list").form("submit");
})
}); function init(){ // 绑定事件 选中的添加selected类
var li_s = $(".equips form li");
li_s.on("click", function(){
var _this = $(this);
_this.hasClass("selected") ? _this.removeClass("selected") : _this.addClass("selected");
});
} function selected(param){ // 对选中的选项做的一系列操作
param.li_selected.remove().appendTo(param.form_ul).removeClass("selected")
.on("click", function(){
var _this = $(this);
_this.hasClass("selected") ? _this.removeClass("selected") : _this.addClass("selected");
});
}

效果如下:

原图:

添加部分项到右边:

选中:

添加到左边:

感觉自己萌萌哒

jQuery 下拉框应用 拓展的更多相关文章

  1. jquery 下拉框 收藏

    jquery 下拉框  Query获取Select选择的Text和Value: 语法解释: 1. $("#select_id").change(function(){//code. ...

  2. 带搜索框的jQuery下拉框插件

    由于下拉框的条数有几十个,于是打算找一个可以搜索查找功能的下拉框,刚开始在网上看了几个,都是有浏览器兼容性问题,后来看到这个“带搜索框的jQuery下拉框美化插件 searchable”,看演示代码简 ...

  3. jQuery下拉框操作系列$("option:selected",this) &&(锋利的jQuery)

    jQuery下拉框操作系列$("option:selected",this)  &&(锋利的jQuery) <!DOCTYPE html> <ht ...

  4. Ajax jQuery下拉框联动案例

    需求: 使用ajax和jQuery实现下拉框联动. 注意:需要加入jquery-2.1.1.min.js 前台 <!DOCTYPE html> <html> <head& ...

  5. jQuery下拉框扩展和美化插件Chosen

    Chosen 是一个支持jquery的select下拉框美化插件,它能让丑陋的.很长的select选择框变的更好看.更方便.不仅如此,它更扩展了select,增加了自动筛选的功能.它可对列表进行分组, ...

  6. jQuery下拉框插件8种效果

    jQuery自定义漂亮的下拉框插件8种效果 jquery美化选择器实例有:边框.下划线. 伸缩 .滑动. 覆盖. 旋转. 弹出层选择 .环形效果. 在线预览 <body class=" ...

  7. jquery 下拉框插件,实现智能补全,模糊搜索,多选

    近期已朋友问我问题,实现类似淘宝百度的下啦搜索条,看了网上好多帖子,都看起来好复杂,而且引用了好多没用的东西,而且多选选择内容多之后容易样式奔溃, 无奈之下只好自己改了, 话不多说上效果图: 模糊搜索 ...

  8. jQuery 下拉框输入匹配提示选项

    做页面输入时,为方便输入和提高用户体验,常用下拉框,当下拉选项数据很多时,也不易找到想要的选项,这时,提供一种下拉框输入匹配提示选项,如下: 图示

  9. Jquery下拉框左右选择

    1.说明 本文demo实现下拉框左右选择,本文地址:http://www.cnblogs.com/lengzhan/p/6423023.html 2.代码 <!DOCTYPE html PUBL ...

随机推荐

  1. CentOS7 修改防火墙,增加外网可以访问的端口号

    CentOS7 修改防火墙,增加外网可以访问的端口号: vim /etc/sysconfig/iptables 增加一条 -A INPUT -p tcp -m state --state NEW -m ...

  2. 关于Oracle表连接

    表连接注意left join on与where的区别: select * from dept; select * from emp; select * from emp a right outer j ...

  3. 2016 DTCC(中国数据库技术大会)

    上周去参加了2016 DTCC(数据库技术大会),会议总共持续3天,议题非常多,我这里搜集了最新的公开的PPT内容,有兴趣的同学可以下载看看,PPT合集下载链接为:http://pan.baidu.c ...

  4. 0040 Java学习笔记-多线程-线程run()方法中的异常

    run()与异常 不管是Threade还是Runnable的run()方法都没有定义抛出异常,也就是说一条线程内部发生的checked异常,必须也只能在内部用try-catch处理掉,不能往外抛,因为 ...

  5. 在Ubuntu中建立MySQL数据库

    最近在做一个关于云计算安全系统的项目,需要用到MySQL数据库,现在把建立数据库的步骤记录下来. 一.用命令在Ubuntu上安装MySQL # sudo apt-get update # sudo a ...

  6. how2heap分析系列:1_first_fit

    一些基础知识不再赘述,可以自行搜索解决 程序源码first_fit.c #include <stdio.h> #include <stdlib.h> #include < ...

  7. python学习笔记-import utils报错

    今天遇到一个坑爹的问题,查找了半天原因,终于解决了,在此特地记录一下. 运行环境:Windows eclipse 我在eclipse中配置了python的运行环境,在eclipse中编写python代 ...

  8. hbase 权威指南笔记(二)

    这次我们先来讨论hbase的重试机制,为什么呐,因为最近公司最近也在做这方面的优化,所以就今天研究的一些成功记录一下. configuration.setInt("hbase.client. ...

  9. iOS开发中的这些权限,你搞懂了吗?

    APP开发避免不开系统权限的问题,如何在APP以更加友好的方式向用户展示系统权限,似乎也是开发过程中值得深思的一件事. 那如何提高APP获取iOS系统权限的通过率呢?有以下几种方式:1.在用户打开AP ...

  10. 基于pcDuino-V2的无线视频智能小车 - UBUNTU系统上的gtk编程

    详细的代码已经上传到git网站:https://github.com/qq2216691777/pcduino_smartcar