设置值在淘汰赛的多选下拉列表中选择 - 淘汰赛方式

时间:2015-03-05 07:42:34

标签: javascript jquery knockout.js multi-select

我有一个多选下拉列表。我将一个对象绑定到那个。只是从选择中获取多个值。我能够获取值并处理它。

以下示例 - 我如何在我的页面中加载多选控件

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本身吗?

1 个答案:

答案 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指出的那样,淘汰赛的文件非常好,但可能需要一些人习惯。通过它来帮助您理解答案是一个好主意。