gpt4 book ai didi

knockout.js - 如何在knockoutjs中使用对象设置选项值

转载 作者:行者123 更新时间:2023-12-03 09:05:17 24 4
gpt4 key购买 nike

我有:

 <select name="test" id="test" class="" 
data-bind="
options: myArray,
value: idSelected,
optionsText: 'name',
optionsValue: 'id',
optionsCaption: 'All'">

我不仅仅想要 id,当您从列表中选择一个项目时,我想在对象中设置数组的 id 和名称。示例:

我想要这个结果:

  idSelected = {id:1, name:'Test'};

最佳答案

只需从绑定(bind)中删除 optionsValue 即可。这会将 idSelected 设置为 observableArray 的对象,而不是字符串 ( documentation )

这是一个工作片段:

var viewModel = function() {
var self = this;

self.myArray = ko.observableArray([{
id: 1,
name: 'Test 1'
}, {
id: 2,
name: 'Test 2'
}]);

self.idSelected = ko.observable();

self.idSelected.subscribe((selected) => {
console.log(self.idSelected());
});
}

ko.applyBindings(new viewModel());
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>

<select name="test" id="test" class="" data-bind="
options: myArray,
value: idSelected,
optionsText: 'name',
optionsCaption: 'All'">

关于knockout.js - 如何在knockoutjs中使用对象设置选项值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47687084/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com