Knockout select 选项与数组绑定
Knockout select options binding with array
我试图将 select 选项与我的数组中的值绑定,但没有成功。我试图改变我使用数组的方式,我将其从 observable 更改为 observableArray,但它不会获取值。
这是我目前的尝试。
<select name="status"
data-bind="options: statuses,
optionsValue: 'key',
optionsText: 'value',
value: status "></select>
淘汰赛:
$statuses = {
1: 'Open',
2: 'Closed',
3: 'On hold'
}
self.statuses = ko.observable($statuses);
self.status = ko.observable(null);
您传递的是字典而不是数组。
应该是这样的:
$statuses = [
'Open',
'Closed',
'On hold'
]
self.statuses = ko.observableArray($statuses)
与以下HTML
<select name="status" data-bind="options: statuses, value: status"></select>
如果您希望键为值,请将 $statuses
更改为:
$statuses = [
{key: 'Open', value: 1},
{key: 'Closed', value: 2},
{key: 'On hold', value: 3}
]
并保持 HTML 与 optionsValue
和 optionsText
的绑定。
我试图将 select 选项与我的数组中的值绑定,但没有成功。我试图改变我使用数组的方式,我将其从 observable 更改为 observableArray,但它不会获取值。
这是我目前的尝试。
<select name="status"
data-bind="options: statuses,
optionsValue: 'key',
optionsText: 'value',
value: status "></select>
淘汰赛:
$statuses = {
1: 'Open',
2: 'Closed',
3: 'On hold'
}
self.statuses = ko.observable($statuses);
self.status = ko.observable(null);
您传递的是字典而不是数组。
应该是这样的:
$statuses = [
'Open',
'Closed',
'On hold'
]
self.statuses = ko.observableArray($statuses)
与以下HTML
<select name="status" data-bind="options: statuses, value: status"></select>
如果您希望键为值,请将 $statuses
更改为:
$statuses = [
{key: 'Open', value: 1},
{key: 'Closed', value: 2},
{key: 'On hold', value: 3}
]
并保持 HTML 与 optionsValue
和 optionsText
的绑定。