gpt4 book ai didi

javascript - knockout SelectedOptions 绑定(bind)到对象的属性失败

转载 作者:行者123 更新时间:2023-11-30 15:19:41 26 4
gpt4 key购买 nike

我在 knockout options 绑定(bind)时遇到问题,特别是使用 selectedOptions 映射到 ko.observable 属性的多选 Here是 html:

<select data-bind="options: disabilities, optionsValue: 'id', selectedOptions: 'currentBusType().disabilities', optionsText: 'code'" multiple="true" size="5"></select>

disabilities 是一个具有以下结构的 ko.observableArray:

[
{"id":"1","code":"WC","description":"Wheel Chair"},
{"id":"2","code":"SN","description":"Special Needs"}
]

currentBusType 是一个具有以下结构的 ko.observable:

{
"bustype_id":"2",
"name":"Bus Type 2",
"capacity":"20",
"serial_number":null,
"disabilities":[1,2]
}

根据对 DOM 的检查,结果是具有正确值和选项但未正确预选选项的多选。我应该如何进行此绑定(bind)以及我做错了什么?

最佳答案

首先,您需要删除表达式周围的单引号:

selectedOptions: currentBusType().disabilities

然后您需要确保每个残疾 id 的类型与您的 currentBusType.disabilities 中的类型相匹配。目前,一个是 Number,另一个是 String。所以,如果你改变 disabilities,它看起来像:

"disabilities": ["1", "2"]

参见 Fiddle

关于javascript - knockout SelectedOptions 绑定(bind)到对象的属性失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43919110/

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