一、基礎取值問題
例如<select class="selector"></select>
1、設定value為pxx的項選中
$(".selector").val("pxx");
2、設定text為pxx的項選中
$(".selector").find("option:contains('pxx')").attr("selected",true);
注意:$(".selector").find("option[text='pxx']").attr("selected",true);這種寫法是錯誤的,目前個人證明input支援這種擷取屬性值的寫法:"input[text='pxx']",select中需要"option:contains('pxx')"這樣擷取。
這裡有一個中括号的用法,中括号裡的等号的前面是屬性名稱,不用加引号。很多時候,中括号的運用可以使得邏輯變得很簡單。
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選擇的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
六、jquery radio取值,checkbox取值,select取值,radio選中,checkbox選中,select選中,及其相關
1 擷取一組radio被選中項的值
var item = $('input[name=items][checked]').val();
2 擷取select被選中項的文本
var item = $("select[name=items] option[selected]").text();
3 select下拉框的第二個元素為目前選中值
$('#select_id')[0].selectedIndex = 1;
4 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();
方法一:
if ($("#checkbox-id").get(0).checked) {
// do something
}
方法二:
if($('#checkbox-id').is(':checked')) {
// do something
}
方法三:
if ($('#checkbox-id').attr('checked')) {
// do something
}
function checkInfo(){
$("input[name='org3.otherValues']").each(
function(){
if($(this).get(0).checked){
return true;
}
});
var org3_ids=$("#org3_ids").val();
if(org3_ids!=''){
return true;
}
alertMsg.warn("請選擇接收人!");
return false;
}
學習交流群:364976091