Knockout.js 对对象的knockoutjsid引用
我想这是个简单的问题 我得到了一个剑道多重选择,它绑定到一个对象数组(contentLangs) 从后端我得到一个int数组(Knockout.js 对对象的knockoutjsid引用,knockout.js,kendo-ui,knockout-kendo,Knockout.js,Kendo Ui,Knockout Kendo,我想这是个简单的问题 我得到了一个剑道多重选择,它绑定到一个对象数组(contentLangs) 从后端我得到一个int数组(AvailableLanguages) 现在我的问题是如何正确绑定这些值 我需要计算机或类似的东西吗 提前谢谢 <select data-bind="kendoMultiSelect: { data: contentLangs , dataTextField: 'Name', dataValueField: 'ID', value:
AvailableLanguages
)
现在我的问题是如何正确绑定这些值
我需要计算机或类似的东西吗
提前谢谢
<select data-bind="kendoMultiSelect: {
data: contentLangs ,
dataTextField: 'Name',
dataValueField: 'ID',
value: AvailableLanguages,
index: 0,
height: '500'
}"></select>
AvailableLanguages: [0,1]
var contentLangs = [
{ Name: "Deutsch", ID: "DE", Cls: "language-flag flag-de" },
{ Name: "Englisch", ID: "EN", Cls: "language-flag flag-en" },
{ Name: "Italienisch", ID: "IT", Cls: "language-flag flag-it" }
]
可用语言:[0,1]
var contentLangs=[
{Name:“Deutsch”,ID:“DE”,Cls:“language flag DE”},
{Name:“Englisch”,ID:“EN”,Cls:“language flag EN”},
{Name:“Italienisch”,ID:“IT”,Cls:“language flag IT”}
]
因此,您需要创建视图模型,如下所示:
var viewModel = {
availableLanguages: ko.observable([0,1]),
contentLangs: [
{ Name: "Deutsch", ID: "DE", Cls: "language-flag flag-de" },
{ Name: "Englisch", ID: "EN", Cls: "language-flag flag-en" },
{ Name: "Italienisch", ID: "IT", Cls: "language-flag flag-it" }
]
};
contentLangs
不需要是observableArray,除非它发生更改<代码>可用语言需要是可观察的,因为我们需要在选择更改时更新viewModel
然后,可以使用以下命令将viewModel绑定到视图:
ko.applyBindings(viewModel);
这种观点是:
<select data-bind="kendoMultiSelect: {
data: contentLangs,
dataTextField: 'Name',
dataValueField: 'ID',
value: availableLanguages,
index: 0,
height: '500'
}"></select>
可用语言的含义是什么?contentLangs应该在下拉列表中吗?抱歉@WayneEllery,contentLangs是数据/数据源OK谢谢,我想我有点不清楚。但你的回答给了我正确的冲动。我给contentLangs添加了一个真实的Id-现在它可以工作了。:-)