我必须在点击按钮时动态添加下拉列表。我正在尝试更新数组,但它没有在下拉列表中显示值
<a data-bind='click:addBillItem'>Add</a>
我的视图模型如下:
function AssignmentViewModel() {
self.billDescriptions = ko.observableArray();
this.addBillItem = function() {
var = '<select id="ddlBillItemDescription" data-bind="';
html += 'options:billDescriptions,';
html += 'optionsText:"ItemName",';
html += 'optionsCaption: "Select Bill Description",';
html += 'optionsValue:"ItemName",';
html += 'value:BillItemDescription';
html += '</select>';
$("#dropdown").append(html);
self.billDescriptions(billItemDescriptions);
var billItemDescriptions = GetBillItemDescriptions();
self.billDescriptions(billItemDescriptions);
};
}
ko.applyBindings(new AssignmentViewModel());
答案 0 :(得分:1)
我建议有两个选项:
1)如果您只需要其中一个下拉列表,请将其放入带有if
绑定的标记中。然后,您需要做的就是翻转绑定到if
的标记以显示您的下拉列表。
2)如果您要进行多次下拉菜单,请在标记中设置foreach
绑定,并在模板中添加下拉列表(使用options
绑定)。然后,在viewmodel中,有一个表示各个下拉列表的对象数组(这些对象将绑定到options
绑定。