Javascript 无法在MVC中使用jquery/js将json数据(api结果)绑定到下拉列表
我想将API返回的json数据绑定到dropdownlist。 但无法获取值id和名称。 Json格式:Javascript 无法在MVC中使用jquery/js将json数据(api结果)绑定到下拉列表,javascript,jquery,json,asp.net-mvc,Javascript,Jquery,Json,Asp.net Mvc,我想将API返回的json数据绑定到dropdownlist。 但无法获取值id和名称。 Json格式: { "categories": [ { "categories": { "id": 1, "name": "CatOne" } }, { "categories": { "id": 2,
{
"categories": [
{
"categories": {
"id": 1,
"name": "CatOne"
}
},
{
"categories": {
"id": 2,
"name": "CatTwo"
}
}
]
}
我返回JsonResult,使用
return Json(responseData, JsonRequestBehavior.AllowGet);
在Jquery调用中,我使用
$.ajax({
type: "POST",
url: "/Home/City",
contentType: "application/json; charset=utf-8",
global: false,
async: false,
dataType: "json",
success: function (jsonObj) {
var listItems = "";
//here I want to get id and name
});
}
});
您可以从
json
中填充下拉列表,如下所示
var json={
“类别”:[
{“类别”:{“id”:1,“名称”:“CatOne”},
{“类别”:{“id”:2,“名称”:“CatTwo”}
]
}
$.each(json.categories,函数(){
$('select').append(“”+this.categories.name+“”)
})
您可以在成功回调中插入断点(或
调试器;
语句)。然后,您可以检查您的jsonObj
,它将准确地告诉您需要知道的内容
在这种情况下,您应该能够迭代jsonObject.categories
,您的id和名称属性将通过jsonObject.categories[i].categories.id
和jsonObject.categories[i].categories.name访问
因此,您的成功方法如下所示:
对于(var i=0;i
我还建议您使用不同的json格式,正如其他答案所建议的那样。您的json应该是[{id:1,name:“CatOne”},{id:2,name:“CatTwo”}]
,然后您可以使用一个简单的循环。