1. 程式人生 > >Js操作Select大全(取值、設置選中等等)

Js操作Select大全(取值、設置選中等等)

自己 class 簡潔 chan break == 中括號 edit end

jquery操作select(取值,設置選中)

每一次操作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); 

}); 

Js操作Select大全

判斷select選項中 是否存在Value="paraValue"的Item
向select選項中 加入一個Item
從select選項中 刪除一個Item
刪除select中選中的項
修改select選項中 value="paraValue"的text為"paraText"
設置select中text="paraText"的第一個Item為選中
設置select中value="paraValue"的Item為選中
得到select的當前選中項的value
得到select的當前選中項的text
得到select的當前選中項的Index
清空select的項
js 代碼

 
// 1.判斷select選項中 是否存在Value="paraValue"的Item 
function jsSelectIsExitItem(objSelect, objItemValue) { 
var isExit = false; 
for (var i = 0; i < objSelect.options.length; i++) { 
if (objSelect.options[i].value == objItemValue) { 
isExit = true; 
break; 
} 
} 
return isExit; 
} 

// 2.向select選項中 加入一個Item 
function jsAddItemToSelect(objSelect, objItemText, objItemValue) { //判斷是否存在 if (jsSelectIsExitItem(objSelect, objItemValue)) { alert("該Item的Value值已經存在"); } else { var varItem = new Option(objItemText, objItemValue); objSelect.options.add(varItem); alert("成功加入"); } } // 3.從select選項中 刪除一個Item function jsRemoveItemFromSelect(objSelect, objItemValue) { //判斷是否存在 if (jsSelectIsExitItem(objSelect, objItemValue)) { for (var i = 0; i < objSelect.options.length; i++) { if (objSelect.options[i].value == objItemValue) { objSelect.options.remove(i); break; } } alert("成功刪除"); } else { alert("該select中 不存在該項"); } } // 4.刪除select中選中的項 function jsRemoveSelectedItemFromSelect(objSelect) { var length = objSelect.options.length - 1; for(var i = length; i >= 0; i--){ if(objSelect[i].selected == true){ objSelect.options[i] = null; } } } // 5.修改select選項中 value="paraValue"的text為"paraText" function jsUpdateItemToSelect(objSelect, objItemText, objItemValue) { //判斷是否存在 if (jsSelectIsExitItem(objSelect, objItemValue)) { for (var i = 0; i < objSelect.options.length; i++) { if (objSelect.options[i].value == objItemValue) { objSelect.options[i].text = objItemText; break; } } alert("成功修改"); } else { alert("該select中 不存在該項"); } } // 6.設置select中text="paraText"的第一個Item為選中 function jsSelectItemByValue(objSelect, objItemText) { //判斷是否存在 var isExit = false; for (var i = 0; i < objSelect.options.length; i++) { if (objSelect.options[i].text == objItemText) { objSelect.options[i].selected = true; isExit = true; break; } } //Show出結果 if (isExit) { alert("成功選中"); } else { alert("該select中 不存在該項"); } } // 7.設置select中value="paraValue"的Item為選中 document.all.objSelect.value = objItemValue; // 8.得到select的當前選中項的value var currSelectValue = document.all.objSelect.value; // 9.得到select的當前選中項的text var currSelectText = document.all.objSelect.options[document.all.objSelect.selectedIndex].text; // 10.得到select的當前選中項的Index var currSelectIndex = document.all.objSelect.selectedIndex; // 11.清空select的項 document.all.objSelect.options.length = 0;

Js操作Select大全(取值、設置選中等等)