Js操作Select使用大全(取值、設置選中,清空)

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;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章