• JQuery操作下拉框


    要实现这种效果:

    HTML:

    <script  src="js/jquery-1.7.2.min.js"></script>
    <table>
         <tr>
              <td>
                   <!--multiple设定下拉框可以多选,size设定下拉框不呈现下拉方式,-->
                   <select size="12" id="One" multiple="multiple">
                         <option>苹果</option>
                         <option>香蕉</option>
                         <option>橘子</option>
                   </select>
              </td>
               <td>
                       <input type="button" value=">>>"><br>
                       <input type="button" value="&nbsp;>&nbsp;"><br>
                       <input type="button" value="&nbsp;<&nbsp;"><br>
                       <input type="button" value="<<<"><br>
    
               </td>
               <td>
                      <select size="12" id="two" multiple="multiple">
                          <option>葡萄</option>
                      </select>
                        
               </td>
     
               <td>
                       <input type="button" value="&nbsp;up&nbsp;"><br><br>
                       <input type="button" value="down"><br>
               </td>
         </tr>
     </table>

    Jquery代码

     <script type="text/javascript">
      //单选(向右移动数据)
      $(function(){
          $(":button:eq(1)").bind("click",function(){
               $("select:eq(0) :selected").appendTo($("select:eq(1)"));
          });
          //单选(向左移动数据)
          $(":button:eq(2)").bind("click",function(){
              $("select:eq(1) :selected").appendTo($("select:eq(0)"));
         });
     });
     /*
     //全选(向右移动数据)
     $(function(){
         $(":button:eq(0)").bind("click",function(){
             $("#One option").appendTo($("#two"));
         });
     });*/
     //全选(向右移动数据)
     $(function(){
         $(":button:eq(0)").bind("click",function(){
             $("select:eq(0) option").appendTo($("select:eq(1)"));
         });
     });
     //全选(向左移动数据)
     $(function(){
        $(":button:eq(3)").bind("click",function(){
             $("#two option").appendTo($("#One"));
       });
     
     $(function(){
          //向上走
          $(":button:eq(4)").click(
              function(){
                   $("select:eq(1) :selected").insertBefore($("select:eq(1) :selected").prev());
              }
          ),
         
           $(":button:eq(5)").click(function(){
               //向下走
               //我之前是这样做的,所以错了
              // $("select:eq(1) :selected").insertAfter($("select:eq(1) :selected").prev());
              //往下走,正确的是这样(next属性方法是往下走,prev()是往上走)
              $("select:eq(1) :selected").insertAfter($("select:eq(1) :selected").next());
        });
     });
     });
     </script>

    知识点:

    jQuery获取Select选择的Text和Value:
    语法解释:
    1.  $("#select_id").change(function(){//code...});   //为Select添加事件,当选择其中一项时触发
    2.  var checkText=$("#select_id").find("option:selected").text();   //获取Select选择的Text
    3. var checkValue=$("#select_id").val();   //获取Select选择的Value
    4. var checkIndex=$("#select_id ").get(0).selectedIndex;   //获取Select选择的索引值
    5. var maxIndex=$("#select_id option:last").attr("index");   //获取Select最大的索引值
    jQuery设置Select选择的 Text和Value:
    语法解释:
    1. $("#select_id  ").get(0).selectedIndex=1;  //设置Select索引值为1的项选中
    2. $("#select_id ").val(4);    // 设置Select的Value值为4的项选中
    3. $("#select_id  option[text='jQuery']").attr("selected", true);   //设置Select的Text值为jQuery的项选中 |
    4. $("select option:first").prop("selected", 'selected'); 设置select中的第一个option被选中

    jQuery添加/删除Select的Option项:
    语法解释:
    1.  $("#select_id").append("<option value='Value'>Text</option>");   //为Select追加一个Option(下拉项)
    2. $("#select_id").prepend("<option  value='0'>请选择</option>");  //为Select插入一个Option(第一个位置)
    3.  $("#select_id option:last").remove();  //删除Select中索引值最大Option(最后一个)
    4.  $("#select_id option[index='0']").remove();  //删除Select中索引值为0的Option(第一个)
    5.  $("#select_id option[value='3']").remove();   //删除Select中Value='3'的Option
    5. $("#select_id option[text='4']").remove();   //删除Select中Text='4'的Option 

    http://www.cnblogs.com/SAL2928/archive/2008/10/28/1321285.html 

    jquery  radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关 
    获  取一组radio被选中项的值 
    var item = $('input[name=items][checked]').val(); 
    获  取select被选中项的文本 
    var item = $("select[name=items] option[selected]").text();  
    select下拉框的第二个元素为当前选中值 
    $('#select_id')[0].selectedIndex = 1;  
    radio单选组的第二个元素为当前选中值 
    $('input[name=items]').get(1).checked = true;  
    获取值: 
    文本框,文本区域:$("#txt").attr("value"); 
    多选框  checkbox:$("#checkbox_id").attr("value"); 
    单选组radio:    $("input[type=radio][checked]").val(); 
    下拉框select: $('#sel').val();  
    控制表单元素: 
    文本框,文本区域:$("#txt").attr("value",'');//清空内容  
    $("#txt").attr("value",'11');//填充内容 
    多选框checkbox:  $("#chk1").attr("checked",'');//不打勾 
    $("#chk2").attr("checked",true);//打勾  
    if($("#chk1").attr('checked')==undefined) //判断是否已经打勾 
    单选组 radio:     $("input[type=radio]").attr("checked",'2');//设置value=2的项目为当前选中项 
    下拉框  select:   $("#sel").attr("value",'-sel3');//设置value=-sel3的项目为当前选中项  
    $("<option value='1'>1111</option><option  value='2'>2222</option>").appendTo("#sel")//添加下拉框的option  
    $("#sel").empty();//清空下拉框 

    ---------------------------------------------------------------------------------------------------- 

    //遍历option和添加、移除option
    function  changeShipMethod(shipping){
    var len = $("select[name=ISHIPTYPE]  option").length
    if(shipping.value != "CA"){
    $("select[name=ISHIPTYPE]  option").each(function(){
    if($(this).val() ==  111){
    $(this).remove();
    }
    });
    }else{
    $("<option  value='111'>UPS  Ground</option>").appendTo($("select[name=ISHIPTYPE]"));
    }

    //取得下拉選單的選取值 

    $(#testSelect  option:selected').text();
    或$("#testSelect").find('option:selected').text();
    或$("#testSelect").val();
    //////////////////////////////////////////////////////////////////
    记  性不好的可以收藏下:
    1,下拉框: 

    var cc1 = $(".formc select[name='country']  option[selected]").text(); //得到下拉菜单的选中项的文本(注意中间有空格)
    var cc2 = $('.formc  select[name="country"]').val(); //得到下拉菜单的选中项的值
    var cc3 = $('.formc  select[name="country"]').attr("id");  //得到下拉菜单的选中项的ID属性值
    $("#select").empty();//清空下拉框  //$("#select").html('');
    $("<option  value='1'>1111</option>").appendTo("#select")//添加下拉框的option 

    稍微解释一下:
    1.select[name='country'] option[selected]  表示具有name 属性,
    并 且该属性值为'country' 的select元素 里面的具有selected 属性的option 元素; 

    2,单选框:
    $("input[@type=radio][@checked]").val();  //得到单选框的  选中项的值(注意中间没有空格)
    $("input[@type=radio][@value=2]").attr("checked",'checked');  //设置单选框value=2的为选中状态.(注意中间没有空格) 

    3,复选框:
    $("input[@type=checkbox][@checked]").val();  //得到复选框的选中的第一项的值
    $("input[@type=checkbox][@checked]").each(function() {  //由于复选框一般选中的是多个,所以可以循环输出
    alert($(this).val());
    }); 

    $("#chk1").attr("checked",'');//不打勾
    $("#chk2").attr("checked",true);//  打勾
    if($("#chk1").attr('checked')==undefined){} //判断是否已经打勾 

    当然jquery的选择器是强大的. 还有很多方法. 

    <script src="jquery-1.2.1.js"  type="text/javascript"></script>
    <script language="javascript"  type="text/javascript">
    $(document).ready(function(){
    $("#selectTest").change(function()
    {
    //alert("Hello");
    //alert($("#selectTest").attr("name"));
    //$("a").attr("href","xx.html");
    //window.location.href="xx.html";
    //alert($("#selectTest").val());
    alert($("#selectTest  option[@selected]").text());
    $("#selectTest").attr("value", "2"); 

    });
    });
    </script> 

    <a href="#">aaass</a> 

    <!--下拉框-->
    <select id="selectTest"  name="selectTest">
    <option value="1">11</option>
    <option  value="2">22</option>
    <option  value="3">33</option>
    <option  value="4">44</option>
    <option  value="5">55</option>
    <option  value="6">66</option>
    </select>
    jquery  radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关获取一组radio被选中  项的值
    var item = $('input[@name=items][@checked]').val();
    获取select被选  中项的文本
    var item = $("select[@name=items] option[@selected]").text();
    select  下拉框的第二个元素为当前选中值
    $('#select_id')[0].selectedIndex = 1;
    radio单选组的第二个  元素为当前选中值
    $('input[@name=items]').get(1).checked = true;
    获取值:
    文本  框,文本区域:$("#txt").attr("value");
    多选框  checkbox:$("#checkbox_id").attr("value");
    单选组radio:  $("input[@type=radio][@checked]").val();
    下拉框select: $('#sel').val();
    控  制表单元素:
    文本框,文本区域:$("#txt").attr("value",'');//清空内容
    $("#txt").attr("value",'11');//  填充内容
    多选框checkbox:  $("#chk1").attr("checked",'');//不打勾
    $("#chk2").attr("checked",true);//  打勾
    if($("#chk1").attr('checked')==undefined) //判断是否已经打勾
    单选组radio:  $("input[@type=radio]").attr("checked",'2');//设置value=2的项目为当前选中项
    下拉框 select:  $("#sel").attr("value",'-sel3');//设置value=-sel3的项目为当前选中项
    $("<optionvalue='1'&  gt;1111</option><optionvalue='2'>2222</option&  gt;").appendTo("#sel")//添加下拉框的option
    $("#sel").empty();// 清空下拉框 

    获取一组radio被选中项的值
    var item =  $('input[@name=items][@checked]').val();
    获取select被选中项的文本
    var item =  $("select[@name=items] option[@selected]").text();
    select下拉框的第二个元素为当  前选中值
    $('#select_id')[0].selectedIndex =  1;
    radio单选组的第二个元素为当前选中值
    $('input[@name=items]').get(1).checked =  true;
    获取值:
    文本框,文本区域:$("#txt").attr("value");
    多选框  checkbox:$("#checkbox_id").attr("value");
    单选组radio:  $("input[@type=radio][@checked]").val();
    下拉框select: $('#sel').val();
    控  制表单元素:
    文本框,文本区域:$("#txt").attr("value",'');//清空内容
    $("#txt").attr("value",'11');//  填充内容
    多选框checkbox:  $("#chk1").attr("checked",'');//不打勾
    $("#chk2").attr("checked",true);//  打勾
    if($("#chk1").attr('checked')==undefined) //判断是否已经打勾
    单选组radio:  $("input[@type=radio]").attr("checked",'2');//设置value=2的项目为当前选中项
    下拉框 select:  $("#sel").attr("value",'-sel3');//设置value=-sel3的项目为当前选中项
    $("<option  value='1'>1111</option><option  value='2'>2222</option>").appendTo("#sel")//添加下拉框的option
    $("#sel").empty();//  清空下拉框 

  • 相关阅读:
    Android 废弃方法属性解决
    Android RecycleView分组
    Android 第三方库FlycoTabLayout
    Android 自定义dialog出现的位置
    Android 底部弹窗实现
    Android 自定义设置布局
    Android 微信、qq分享文本 (Intent)
    SpringBoot关于跨域的三种解决方案
    记录一次通用Mapper+自定义mapper出现的问题分析以及排查
    IDEA配置Maven+新建Maven项目
  • 原文地址:https://www.cnblogs.com/cxx328/p/6495194.html
Copyright © 2020-2023  润新知