JQuery操作下拉框

转载自下面的链接,很有用的。

http://www.cnblogs.com/yrhua/archive/2012/11/04/2753571.html

要实现这种效果:

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>
                    <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的项选中 

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();//  清空下拉框

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。