博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

jquery 对select处理

Posted on 2013-05-31 11:29  米粒3  阅读(154)  评论(0编辑  收藏  举报

每一次操作select的时候,总是要出来翻一下资料,不如自己总结一下,以后就翻这里了。

比如<select class="selector"></select>

1、设置value为pxx的项选中

     $(".selector").val("pxx");

2、设置text为pxx的项选中

    $(".selector").find("option[text='pxx']").attr("selected",true);

    这里有一个中括号的用法,中括号里的等号的前面是属性名称,不用加引号。很多时候,中括号的运用可以使得逻辑变得很简单。

3、获取当前选中项的value

    $(".selector").val();

4、获取当前选中项的text

    $(".selector").find("option:selected").text();

    这里用到了冒号,掌握它的用法并举一反三也会让代码变得简洁。

 

很多时候用到select的级联,即第二个select的值随着第一个select选中的值变化。这在jquery中是非常简单的。

如:$(".selector1").change(function(){

     // 先清空第二个

      $(".selector2").empty();

     // 实际的应用中,这里的option一般都是用循环生成多个了

      var option = $("<option>").val(1).text("pxx");

      $(".selector2").append(option);

});

 

 

jQuery("#select_id").change(function(){}); // 1.为Select添加事件,当选择其中一项时触发     
var checkValue = jQuery("#select_id").val(); // 2.获取Select选中项的Value  
var checkText = jQuery("#select_id :selected").text(); // 3.获取Select选中项的Text   
var checkIndex = jQuery("#select_id").attr("selectedIndex");// 4.获取Select选中项的索引值,
或者:jQuery("#select_id").get(0).selectedIndex;  
var maxIndex = jQuery("#select_id :last").attr("index");  // 5.获取Select最大的索引值,
或者:jQuery("#select_id :last").get(0).index;
 
 
jQuery("#select_id").get(0).selectedIndex = 1; // 1.设置Select索引值为1的项选中  
jQuery("#select_id").val(4);  // 2.设置Select的Value值为4的项选中
$("#select_id").attr("value","Normal“);
$("#select_id").get(0).value = value;
//根据select的显示值来为select设值
var count=$("#select_id").get(0).options.length;
for(var i=0;i<count;i++){
if($("#select_id").get(0).options[i].text == text)  
{
$("#select_id").get(0).options[i].selected = true;          
break;  
}  
}
 
 
方法1:jQuery("#select_id").append("<option value='新增'>新增option</option>"); 
方法2:var option = $("<option>").text(i).val(i) // 1.为Select追加一个Option(下拉项)  
jQuery("#select_id").prepend("<option value='请选择'>请选择</option>"); // 2.为Select插入一个Option(第一个位置)  
jQuery("#select_id").get(0).remove(1);  // 3.删除Select中索引值为1的Option(第二个)  
jQuery("#select_id :last").remove();  // 4.删除Select中索引值最大Option(最后一个)   
jQuery("#select_id [value='3']").remove(); // 5.删除Select中Value='3'的Option   
jQuery("#select_id").empty();   // 6.清空下拉列表