将值设置为在敲除的多选下拉列表中选择的值 - 敲除方式
Set value as selected in multiselect dropdown in knockout - The knockout way
我有一个多 select dropdown.I 正在将一个对象绑定到那个对象。只是为了从 selection.I 中获取多个值,我能够获取这些值并对其进行处理。
这是示例 - 我如何在我的页面中加载多 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(),
};
但是当我再次加载页面进行编辑时,我想将值设置为 selected values.I 已尝试使用 Jquery - JQuery multiselect - Set a value as selected in the multiselect dropdown
有人可以告诉我如何使用 Knockout 本身来完成吗?
您需要设置 '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);
我已经为您创建了一个更新的 fiddle:http://jsfiddle.net/d5j0zogz/2/
正如 Tomalak 所说,knockout 的文档非常好,但需要一些时间来适应。浏览它有助于您理解答案是个好主意。
我有一个多 select dropdown.I 正在将一个对象绑定到那个对象。只是为了从 selection.I 中获取多个值,我能够获取这些值并对其进行处理。
这是示例 - 我如何在我的页面中加载多 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(),
};
但是当我再次加载页面进行编辑时,我想将值设置为 selected values.I 已尝试使用 Jquery - JQuery multiselect - Set a value as selected in the multiselect dropdown
有人可以告诉我如何使用 Knockout 本身来完成吗?
您需要设置 '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);
我已经为您创建了一个更新的 fiddle:http://jsfiddle.net/d5j0zogz/2/
正如 Tomalak 所说,knockout 的文档非常好,但需要一些时间来适应。浏览它有助于您理解答案是个好主意。