我需要使用JSON响应填充下拉菜单的帮助 [英] I need help populating my dropdown with my JSON response
问题描述
我正在从C#网络方法中以这种格式重新获得JSON:
{"d":["ADAMS CITY","BOULDER","ANTON","ARBOLES"]}
我现在有一个asp.net下拉列表.好吧,它呈现为具有#city
id的html下拉列表.
我收到有关AJAX请求的成功警报.如何将这些结果填充到我的#city下拉列表中?
尝试过:
success:
function (data) {
var values = eval(data.d);
var ddl = $("#parkCity");
$('option', ddl).remove();
ddl.html(data);
alert("Cities loaded");
},
在您的success
回调内部应该可以做一些事情:
var $select = $("#parkcity");
$.each(data.d, function(i, el) {
console.log(el);
$select.append($("<option />", { text: el }));
});
示例: http://jsfiddle.net/z2D8f/ >
或一次附加全部HTML的替代方法,这可能会更快:
var html = $.map(data.d, function(el) {
return "<option>" + el + "</option>";
});
$("#parkcity").append(html.join(''));
示例: http://jsfiddle.net/pUhw2/ >
I'm getting JSON back in this format from my C# webmethod:
{"d":["ADAMS CITY","BOULDER","ANTON","ARBOLES"]}
I now have a asp.net dropdown. Well, it renders as a html dropdown with #city
id.
I'm getting a success alert on my AJAX request. How can I populate these results into my #city dropdown?
Tried this:
success:
function (data) {
var values = eval(data.d);
var ddl = $("#parkCity");
$('option', ddl).remove();
ddl.html(data);
alert("Cities loaded");
},
Here's something that should do fine inside of your success
callback:
var $select = $("#parkcity");
$.each(data.d, function(i, el) {
console.log(el);
$select.append($("<option />", { text: el }));
});
Example: http://jsfiddle.net/z2D8f/
Or an alternative that appends the HTML all at once, which is probably faster:
var html = $.map(data.d, function(el) {
return "<option>" + el + "</option>";
});
$("#parkcity").append(html.join(''));
Example: http://jsfiddle.net/pUhw2/
这篇关于我需要使用JSON响应填充下拉菜单的帮助的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!