2011-12-13 84 views
2

如何使用javascript設置下拉菜單的選定值?如何使用javascript設置下拉菜單的選定索引

這是我的HTML:

<select id="strPlan" name="strPlan" class="formInput"> 
    <option value="0">Select a Plan</option> 
</select> 

我使用JavaScript來添加值。任何人都可以告訴我如何調用一個函數來選擇一個值?

+1

發表您的JavaScript。我們無法猜測你到底在做什麼。 – Oded

+0

你試過了什麼。輸入你的代碼 –

回答

7

如何使用javascript設置下拉菜單的選定值?

所以,你想改變當前選擇的選項的值。那是對的嗎?

function setValueOfSelected(select, valueToSetTo){ 
    select.options[select.selectedIndex].value = valueToSetTo; 
} 

,並調用它是這樣的:

setValueOfSelected(document.getElementById('strPlan'), 'selected'); 

Demo


在你的意思是,你要選擇一個選項,根據其值的情況下,使用此:

聲明此功能:

function setOptionByValue(select, value){ 
    var options = select.options; 
    for(var i = 0, len = options.length; i < len; i++){ 
     if(options[i].value === value){ 
      select.selectedIndex = i; 
      return true; //Return so it breaks the loop and also lets you know if the function found an option by that value 
     } 
    } 
    return false; //Just to let you know it didn't find any option with that value. 
} 

現在稱之爲按值,設置的選項是這樣,第一個參數是選擇元素,第二個是值:

setOptionByValue(document.getElementById('strPlan'), '1'); 

Demo

2

像這樣的事情可以工作,我相信:

function setDropDownList(elementRef, valueToSetTo) 
{ 
    var isFound = false; 

    for (var i = 0; i < elementRef.options.length; i++) { 
     if (elementRef.options[i].value == valueToSetTo) { 
      elementRef.options[i].selected = true; 
      isFound = true; 
     } 
    } 

    if (isFound == false) 
     elementRef.options[0].selected = true; 
} 

發現here。只需Google即可「設置所選值下拉式JavaScript」,您將獲得許多可能的解決方案。

+0

是的這個更新工作得很好,我已經使用它。 –

相關問題