我有一个多选下拉列表。我将一个对象绑定到那个。只是从选择中获取多个值。我能够获取值并处理它。
以下示例 - 我如何在我的页面中加载多选控件
http://jsfiddle.net/Hsakarp/d5j0zogz/
var viewModel = {
optionValues: [{name: "name1", Id: 1, fullname: "Development"},{name: "name2", Id: 2, fullname: "Development"},{name: "name3", Id: 3, fullname: "Development"}],
multipleSelectedOptionValues: ko.observable(),
};
但是当我再次加载页面进行编辑时,我想将值设置为选定的值。我尝试过使用Jquery - JQuery multiselect - Set a value as selected in the multiselect dropdown
有人可以告诉我如何使用Knockout本身吗?
答案 0 :(得分:0)
您需要设置'optionsValue'并将其填充到您的可观察数组中。
HTML:
<select multiple="multiple" data-bind="options: optionValues, optionsValue: 'Id', optionsText:'name', selectedOptions: multipleSelectedOptionValues"></select>
淘汰赛:
var viewModel = {
optionValues: [{name: "name1", Id: 1, fullname: "Development"},{name: "name2", Id: 2, fullname: "Development"},{name: "name3", Id: 3, fullname: "Development"}],
multipleSelectedOptionValues: ko.observableArray([1,3]),
};
ko.applyBindings(viewModel);
我为您创建了一个更新的小提琴:http://jsfiddle.net/d5j0zogz/2/
正如Tomalak指出的那样,淘汰赛的文件非常好,但可能需要一些人习惯。通过它来帮助您理解答案是一个好主意。