每一次操作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.清空下拉列表