zoukankan      html  css  js  c++  java
  • jquery下拉框实现将左边的选项添加到右边区域

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <style type="text/css">
    * { margin:0; padding:0; }
    div.centent {
       float:left;
       text-align: center;
       margin: 10px;
    }
    span { 
        display:block; 
        margin:2px 2px;
        padding:4px 10px; 
        background:#898989;
        cursor:pointer;
        font-size:12px;
        color:white;
    }
    </style>
    <!--   引入jQuery -->
    <script src="../scripts/jquery-1.3.1.js" type="text/javascript"></script>
    <script type="text/javascript">
    $(function(){
        //移到右边
        $('#add').click(function() {
        //获取选中的选项,删除并追加给对方
            $('#select1 option:selected').appendTo('#select2');  //appendTo()方法可以用来移动元素,移动元素时首先从文档上删除此元素,然后将该元素插入得到文档中的指定节点
        });
        //移到左边
        $('#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');
        });
      
    });
    </script>
    
    </head>
    <body>
       
        <div class="centent">
            <select multiple="multiple" id="select1" style="100px;height:160px;">
                <option value="1">选项1</option>
                <option value="2">选项2</option>
                <option value="3">选项3</option>
                <option value="4">选项4</option>
                <option value="5">选项5</option>
                <option value="6">选项6</option>
                <option value="7">选项7</option>
            </select>
            <div>
                <span id="add" >选中添加到右边&gt;&gt;</span>
                <span id="add_all" >全部添加到右边&gt;&gt;</span>
            </div>
        </div>
    
        <div class="centent">
            <select multiple="multiple" id="select2" style=" 100px;height:160px;">
                <option value="8">选项8</option>
            </select>
            <div>
                <span id="remove">&lt;&lt;选中删除到左边</span>
                <span id="remove_all">&lt;&lt;全部删除到左边</span>
            </div>
        </div>
    
    
    </body>
    </html>

    实现效果:

              

    remove() appendTo()使用对比:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>3-4-2</title>
     <!--   引入jQuery -->
     <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script>
     <script type="text/javascript">
     //<![CDATA[
      $(function(){

    //1:
    var $li = $("ul li:eq(1)").remove(); // 获取第二个<li>元素节点后,将它从网页中删除。 $li.appendTo("ul"); // 把刚才删除的又重新添加到<ul>元素里 //所以,删除只是从网页中删除,在jQuery对象中,这个元素还是存在的,我们可以重新获取它

    // 2: $(
    "#appRemove").click(function(){ $("ul li:eq(0)").appendTo("#appRemove"); }); }); //]]> </script> </head> <body> <p title="选择你最喜欢的水果." >你最喜欢的水果是?</p> <ul> <li title='苹果'>苹果</li> <li title='橘子'>橘子</li> <li title='菠萝'>菠萝</li> </ul> <div id="appRemove">appendTo实现移动删除元素</div> </body> </html>

    remove()与detach()区别:

      相同点: 都可以从DOM中去掉所有匹配的元素

      区别:detach()不会把匹配的元素从jquery对象中删除,因而可以在将来使用这些匹配的元素;所有绑定的时间、附件的数据等都会保留下来

                  remove()之前绑定的事件将失效

  • 相关阅读:
    Java 第一章 初识Java
    Tomcat基础教程(三)
    Tomcat基础教程(二)
    Web Service相关工具的配置
    分布式版本控制系统Git的安装与使用
    个人项目小学四则运算 “软件”之初版
    结对项目四则运算 “软件”之升级版
    第一篇作业准备
    Linux常用命令入门文件、网络、系统及其他操作命令
    MySql5.7默认生成的密码无法正常登陆
  • 原文地址:https://www.cnblogs.com/a757956132/p/4994991.html
Copyright © 2011-2022 走看看