【发布时间】:2013-01-03 19:14:59
【问题描述】:
我正在使用 jquery 并尝试调整我的选择菜单构建器以更快地运行。
我使用 each 和 append,但是我已经切换到标准 for 循环,目前正尝试将我的选项从使用 append 转换为使用 .html() 附加到我的选择选项的连接字符串。我似乎在尝试将我的 var 选项对象转换回 html 字符串时不知所措。有人可以告诉我我可能做错了什么。
$.selectMenuBuilder = function(json) {
var myselect = $("#myselect");
var list = "<option value=\"\">> Select Account Number</option>";
var l= json.funding.length;
for(var i=0;i<l; i++) {
var funding = json.funding[i];
var option = $("<option value=\"" + funding.id + "\">" + funding.accountNumber + "</option>")
if(someLogic) {
option.attr("selected", "selected");
}
//Having trouble here converting option object back to html.
list += option.html();
}
list += "<option value=\"addnew\">+ New Account Number</option>";
myselect .html(list);
}
【问题讨论】:
-
只是这个简化示例中使用的一个错字。我的实际选择菜单字段都来自我的 json 对象。
-
您不需要 jQuery 作为选项,但如果您确实想使用它,请在循环外创建对象并在循环内修改 id/value 属性。
标签: javascript jquery