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

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

每一次操做select的時候,老是要出來翻一下資料,不如本身總結一下,之後就翻這裏了。

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

一、設置value爲pxx的項選中

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

二、設置text爲pxx的項選中

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

這裏有一箇中括號的用法,中括號裏的等號的前面是屬性名稱,不用加引號。不少時候,中括號的運用能夠使得邏輯變得很簡單。

三、獲取當前選中項的value

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

四、獲取當前選中項的text

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

這裏用到了冒號,掌握它的用法並觸類旁通也會讓代碼變得簡潔。

不少時候用到select的級聯,即第二個select的值隨着第一個select選中的值變化。這在jquery中是很是簡單的。

如: 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 代碼 app

 
// 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; 
相關文章
相關標籤/搜索