选择绑定到数组索引的选项模板
我可以将选择列表的 optionsValue 绑定到 选项数组中的特定项目?
<select data-bind="options: options, optionsText: 'text',
optionsValue: ko.utils.arrayIndexOf(**somevalue**)" />
或者我是否必须将我的选项对象从 转换为
{
text: 'asdasd'
}
并
{
text: 'asdasd',
id: 0
}
做
<select data-bind="options: options, optionsText: 'text',
optionsValue: 'id' />
谢谢
Am I able to bind the optionsValue of a select list to the index of
the particular item in the option array?
<select data-bind="options: options, optionsText: 'text',
optionsValue: ko.utils.arrayIndexOf(**somevalue**)" />
Or am I stuck with having to transform my options object from
{
text: 'asdasd'
}
to
{
text: 'asdasd',
id: 0
}
and doing
<select data-bind="options: options, optionsText: 'text',
optionsValue: 'id' />
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您通过 JSON 进行通信而不是提交表单,那么您可以将选定的值作为您的对象并创建一个 dependentObservable 来表示它的索引,例如:
示例: http://jsfiddle.net/rniemeyer/hevTF/
如果您正在提交表单并依赖于所选选项元素的 value 属性,那么您可能需要将索引添加到您的对象(正如您所建议的那样)。另一种选择是使用 {{each(item, index)}} 在 jQuery 模板中发出选项元素,例如: http://jsfiddle.net/rniemeyer/h6wLr/
If you are communicating via JSON rather than submitting a form, then you can have the selected value be your object and create a dependentObservable to represent the index of it like:
Sample: http://jsfiddle.net/rniemeyer/hevTF/
If you are submitting a form and are relying on the value attribute of the selected option element, then you would want to add the index to your object (as you had suggested). The other option is to emit the option elements in a jQuery template using {{each(item, index)}} like: http://jsfiddle.net/rniemeyer/h6wLr/