我有一个选择框数组,其中包含一个唯一的ID。
<select class="taskcompleted" id="c392018">
<option value="No">No</option>
<option value="Yes">Yes</option>
</select>
我有一个格式为
的JSON {"id":"c392018","value":"Yes"}
我使用以下Javascript来设置所选值
$.getJSON('getstatus.php') //place correct script URL
.done(function(response) {
$.each(response, function(key) {
var SelectObj = response[key];
console.log(SelectObj['value']);
jQuery('#' + SelectObj['id']).val(SelectObj['value']).attr('selected', true);
});
});
这不是选择&#34;是&#34;的值。我怎么能这样做?
答案 0 :(得分:1)
您只需使用.val()使用对象中的值设置所选选项:
所以您拥有:
jQuery('#' + SelectObj['id']).val(SelectObj['value']).attr('selected', true);
应该是:
jQuery('#' + SelectObj['id']).val(SelectObj['value']);
请参阅下面的代码段示例:
此外,如果您真的想要项目的选定属性,您应该使用:
.prop("selected", "selected");
var SelectObj = {"id":"c392018","value":"Yes"};
jQuery('#' + SelectObj['id']).val(SelectObj['value']).prop('selected','selected');
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="taskcompleted" id="c392018">
<option value="No">No</option>
<option value="Yes">Yes</option>
</select>
&#13;
答案 1 :(得分:1)
嗯,你真的不需要jQuery。
var select = document.getElementById(SelectObj.id);
select.value = SelectObj.value;