[英]Want to apend Ajax response data in select option
想要 Append Select 選項但不知道如何在 select 選項中獲取響應值。
在響應中獲取的所有值但在 select 選項中不能 append,我認為語法錯誤
success: function (response) {
if (response) {
console.log(response);
$("#state").empty();
$("#state").append('<option value="" selected disabled>Select State</option>');
$.each(response, function (id, name) {
$("#state").append('<option value="' + id + '">' + name + ' </option>');
});
}
}
控制台 Output:獲取的值但不能附加到 select 選項中
[{…}]
0: {id: 4, name: "Valencia"}
1: {id: 5, name: "ABC"}
length: 2
__proto__: Array(0)
.each
應用於 object 根據手冊返回:
jQuery.each( object, callback )
在哪里:
object
Type: Object
The object to iterate over.
callback
Type: Function( String propertyName, Object valueOfProperty )
The function that will be executed on every value.
所以內部name
你有一個 object。 根據這個來獲取你必須使用的name
屬性name.name
。
因此,使用更好的變量名稱,您可以擁有:
$.each(response, function (id, element) {
$("#state").append('<option value="' + element.id + '">' + element.name + ' </option>');
success: function (response) {
if (response) {
console.log(response);
$("#state").empty();
$("#state").append('<option value="" selected disabled>Select State</option>');
$.each(response, function (index, value) {
$("#state").append('<option value="' + value.id + '">' + response[index].name + ' </option>');
});
}
各function實現不正確,見文檔: https://api.jquery.com/jQuery.each/
第一個參數是索引,是可選的,第二個是當前循環中的object。
我改變了你的代碼來展示如何使用每一個
編輯:錯過了一個“。”
您沒有明智地提取值索引。 你有一個包含兩個 json 對象的數組。 所以你需要使用下面的索引來提取。
success: function (response) {
if (response) {
console.log(response);
$("#state").empty();
$("#state").append('<option value="" selected disabled>Select State</option>');
$.each(response, function (index, value) {
$("#state").append('<option value="' + response[index].id + '">' + response[index].name + ' </option>');
});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.