是否有任何设置<select>
标签选项值的功能?我有一个ajax响应数组,我想把这个数组放在<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 :(得分:7)
我有一个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]);
}
演示:
见:
答案 1 :(得分: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/
谢谢
答案 2 :(得分:0)
你在寻找类似的东西 -
你可以添加这样的选项 -
$(function(){
$("#mySelect").html('<option value="2">2</option>');
});
对不起,我错过了你在ajax callback
做的事。我也在我的演示中更新了。
你也可以这样 -
document.getElementById("mySelect").innerHTML = '<option value="2">2</option>';
为什么不添加新选项而不是在选项中添加值。