zoukankan      html  css  js  c++  java
  • 简单jQuery实现选项框中列表项的选择

    这段代码非常的简单,仅仅作为自己的一个小小的记录!

    ok,先上一个简单的图例,效果如下(注意:这只是一个简单的例子,不过可以根据这个简单的例子,变化出更为复杂的效果)!

    代码也非常的简单,如下所示(注意:图片的路径是在我的小例子中的,表的样式也有待自己的调整,还有许多的样式文件和jQuery的JS文件没有包含在代码中,此代码主要是一个记录一个样例!):

    <!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>
            <title>例子</title>
                
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <meta http-equiv="Cache-Control" content="no-store"/>
        <meta http-equiv="Pragma" content="no-cache"/>
        <meta http-equiv="Expires" content="0"/>
        
    
            <style type="text/css">
            .selcet1 {
                border:#CCC solid 1px;
                padding:3px;
                margin:0px;
                font:14px;
                width:250;
                min-width: 83px;
            }
            </style>        
            <script  language="JavaScript" type="text/javascript">
            $(document).ready(function(){
                   //点击添加按钮
                   $('#add').click(function() {
                       $('#leftIdList option:selected').remove().appendTo('#rightIdList');
                   });
    
                   //点击删除按钮
                   $('#delete').click(function() {
                       $('#rightIdList option:selected').appendTo('#leftIdList');
                   });
    
                   //双击事件
                   $('#leftIdList').dblclick(function() {
                       //we will delete the options of the leftIdList when the rightIdList include the same options
                            var rightIdListLength = $('#rightIdList option').length;
                             $('#leftIdList option:selected').each(function(){
                                 for(var i=0;i<rightIdListLength;i++)  {
                                     if($("#rightIdList option[index="+i+"]").val()==$(this).val()){
                                         $(this).remove();
                                     }
                                   }
                             });
                             
                       $('#leftIdList option:selected').appendTo('#rightIdList');
                   });
    
                   $('#rightIdList').dblclick(function() {
                       //we will delete the options of the rightIdList when the leftIdList include the same options
                       var leftIdListLength = $('#leftIdList option').length;
                        $('#rightIdList option:selected').each(function(){
                            for(var i=0;i<leftIdListLength;i++)  {
                                if($("#leftIdList option[index="+i+"]").val()==$(this).val()){
                                    $(this).remove();
                                }
                              }
                        });
    
                       $('#rightIdList option:selected').appendTo('#leftIdList');
                   });
               }); 
    
            function getIdList() {
                        var optionstring = "";
                        optionstring += "<option value="001" >001</option>"+
                                                  "<option value="002" >002</option>"+
                                                  "<option value="003" >003</option>"+
                                                  "<option value="004" >004</option>"+
                                                  "<option value="005" >005</option>"+
                                                  "<option value="006" >006</option>"+
                                                  "<option value="007" >007</option>"+
                                                  "<option value="008" >008</option>"+
                                                  "<option value="009" >009</option>"+
                                                  "<option value="010" >010</option>";
                                                  
                        $("#leftIdList").html(optionstring);
             }
            //调用Ajax功能,这个方法是待用的,在实际的项目中使用
            function getIdList_() {
                    $.ajax({
                        type : "post",
                        url : "/acode/getIdList.action",
                        data:{id:function(){return $("#id").val();}},
                        dataType : "json",
                        error:function(){
                            alert("没有对应的数据,请查看输入的查询条件!");
                        },
                        success : function(data) {
                            if (data.length == 0) {return;}
                            var optionstring = "";
                            for ( var i = 0; i < data.length; i++) {
                                optionstring += "<option value=""+ data[i].id +"" >"+ data[i].id+"</option>";
                            }
                            $("#leftIdList").html(optionstring);
                        }
                    });
                 }
            </script>
        </head>
        <body>
                  <table>
                       <tr>
                            <td align="left">待选学号</td>
                            <td width="81"></td>
                            <td class="notNull" align="left">已选学号</td>
                       </tr>
                       <tr>
                            <td width="83"  align="left"><input id="id" class="input-w-95-1" type="text" onkeyup="getIdList()"/></td>
                            <td width="81"></td>
                            <td></td>
                       </tr>
                       <tr>
                            <td width="83" ><select name="ids_" multiple="multiple" class="selcet1" id="leftIdList" style="200;height:100px;"></select></td>
                            <td width="81">
                                <table width="100%" border="0" cellspacing="0" cellpadding="0" align="center">
                                  <tr>
                                    <td><img onmouseover ="this.src='/acode/images/button/d-tj-2.gif'" onmouseout="this.src='/acode/images/button/d-dt.gif'" src="/acode/images/button/d-dt.gif" width="81" height="25" id="add"/></td>
                                  </tr>
                                  <tr>
                                    <td><img onmouseover ="this.src='/acode/images/button/d-sc-2.gif'" onmouseout="this.src='/acode/images/button/d-sc.gif'" src="/acode/images/button/d-sc.gif" width="81" height="25" id="delete"/></td>
                                  </tr>
                               </table>
                            </td>
                            <td><select name="ids" multiple="multiple" class="selcet1" id="rightIdList" style="200;height:100px;"></select></td>
                      </tr>
                  </table>
        </body>
    </html>
  • 相关阅读:
    一种新的数据类型Symbol
    var/let/const的区别
    Vue-cli脚手架 安装 并创建项目--命令
    命令
    git版本控制入门--码云
    闲鱼hu超赞,有赞必回,24小时在线!咸鱼互赞超赞留言评
    咸鱼互粉互赞必回 有没有宝贝要的_咸鱼吧
    闲鱼互赞群
    拍摄者能在抖音教学中学会什么
    影响抖音推荐机制的因素和上热门
  • 原文地址:https://www.cnblogs.com/godtrue/p/3641123.html
Copyright © 2011-2022 走看看