大家好,我在我的应用程序中动态地将数据附加到下拉列表中,但是我在这里有一个错误,下拉列表被创建了,但值被绑定在下拉列表之外。有人能纠正我在哪里做错了吗
if(product.oPTIONS.length>0)
{
alert(product.oPTIONS.length);
$.each(product.oPTIONS, function (idx, options) {
$("#productdetails").append('<label>' + options.OptionName + '</label>');
if(options.value.length>0)
{
var stringBuilder = [];
$("#productdetails").append('<select>');
$.each(options.value, function (idx, values) {
stringBuilder.push('<option id="' + values.OptionvalueID + '">' + values.OptionValue + '</option>');
});
stringBuilder.push('</select>');
$("#productdetails").append(stringBuilder.join(''));
}
});发布于 2012-10-09 22:42:36
根据您所说的,我猜您已经获得了一个具有下拉列表的模型,该模型已经使用Html.DropDownListFor为元素productdetails创建,并且您希望从ajax调用中填充它。
因此,您想要像这样进行jQuery ajax调用
$.ajax({
url: "/SomeController/SomeDetails",
type: "GET",
success: function (data) {
$("#productdetails option").remove();
$.each(data, function (key, value) {
$('#productdetails')
.append($("<option></option>")
.attr("value", key)
.text(value));
});
}
});如果不想删除select的旧值,只需删除行$("#productdetails option").remove();
还要注意,我的控制器方法返回option元素的键值对的JSON对象。
https://stackoverflow.com/questions/12781018
复制相似问题