2014-07-20 83 views
3

是否有任何功能來設置<select>標籤選項的值?我有一個Ajax響應數組,我想把這個數組放在一個<select>標記中。Javascript中的Select選項的值設置

這是我的代碼:

$.ajax({ 
    type: "GET", 
    url: "http://.......api/1/AbsenceType", 
    dataType: "json", 
    success: function (data) { 
     // It doesn't work 
     var ind = document.getElementById('mySelect').selectedIndex; 
     document.getElementById('mySelect').options.value="2";// 
    } 
}) 

而我的選擇標籤:

<select id=mySelect name="mySelect" required="required" data-mini ="true" onchange="myFunction3();"/> 
    <option id ="type" value=""></option> 
</select> 
+0

你是什麼意思? 。的document.getElementById( 'mySelect')值= 「2」; –

+0

你的意思是你想改變選項標籤的值嗎? –

+1

我想給選項標籤增加值,它是空的,我想用ajax響應中的數組填充它。 –

回答

6

我有一個ajax響應數組,我想把這個數組放在一個標記中。

你爲什麼不只是從陣列中添加的選項來選擇,然後設置選擇的值,就像這樣:

開始與空選擇:

<select id="mySelect" name="mySelect"> 

</select> 

然後使用該功能作爲一個回調:

var callback = function (data) { 

    // Get select 
    var select = document.getElementById('mySelect'); 

    // Add options 
    for (var i in data) { 
     $(select).append('<option value=' + data[i] + '>' + data[i] + '</option>'); 
    } 

    // Set selected value 
    $(select).val(data[1]); 
} 

演示:

http://jsfiddle.net/M52R9/

參見:

+0

的示例中所演示的那樣生成,這就是我想要的,謝謝aloooooot :) :): ) –

+0

非常歡迎:)! – user3856210

+0

完美答案.. –

1

試試這個...

<select> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
    <option value="4">4</option> 
    <option value="5">5</option>` 
</select> 

$("select").val("3"); 

參觀現場演示這裏:http://jsfiddle.net/y4B68/

謝謝你ü

0

您正在尋找類似的東西 -

DEMO

你可以這樣添加選項 -

$(function(){ 
$("#mySelect").html('<option value="2">2</option>'); 
}); 

對不起,我只是錯過了,你正在做它在ajax callback。我也更新了我的演示。

你也可以這樣too-

document.getElementById("mySelect").innerHTML = '<option value="2">2</option>'; 

你爲什麼不加入,而不是添加在選項的值新的選擇。

相關問題