Kendo MVVM-数据源的简单值绑定
我想学习如何在Kendo MVVM中将页面上的输入绑定到数据源。简单地说,假设我有以下html:Kendo MVVM-数据源的简单值绑定,mvvm,kendo-ui,kendo-dataviz,kendo-mvvm,Mvvm,Kendo Ui,Kendo Dataviz,Kendo Mvvm,我想学习如何在Kendo MVVM中将页面上的输入绑定到数据源。简单地说,假设我有以下html: <div id="configDiv"> Call:<input data-bind="value: SystemCall" type="text" /><br /> <button data-bind="click: save">Save</button> </div> 其思想是,从读取url以json格式返
<div id="configDiv">
Call:<input data-bind="value: SystemCall" type="text" /><br />
<button data-bind="click: save">Save</button>
</div>
其思想是,从读取url以json格式返回的SystemCall值将绑定到html中的输入字段。有点不对劲
因为这不管用。我在网上搜索了一个简单的例子,没有比这个更复杂的了,但是找不到。任何关于如何开始的帮助都将是
非常感谢。我没有完整的工作示例可供分享,但我可以指出一些事情
Kendo数据源期望您的服务器返回一个项目数组,因此如果您的服务器返回单个对象,例如JSON:
{
"SystemId": 1,
"SystemCall": "one"
}
然后它将不知道如何处理它,因为它不是数组。它期望类似于:
[
{
"SystemId": 1,
"SystemCall": "one"
},
{
"SystemId": 2,
"SystemCall": "two"
}
]
MVVM绑定无法工作,因为您将其绑定到“SystemCall”,但ViewModel对象没有名为“SystemCall”的属性。这些将位于
ViewModel.dataSource
由于数据源希望包含一个数据项数组,因此它通常绑定到ListView或网格小部件以显示每个数据项。ListView中的每个行模板都可以有该系统的输入元素
在您的
型号
中,id
字段应包含在字段列表中,如下所示:
var Model = kendo.data.Model.define({
id: "SystemId",
fields: {
SystemId: { type: "number" }, // assuming this is a number.
SystemCall: { editable: true }
}
});
我知道这不是一个完整的答案,但我希望这至少能让你朝着正确的方向前进……这确实有帮助,相当多。谢谢
var Model = kendo.data.Model.define({
id: "SystemId",
fields: {
SystemId: { type: "number" }, // assuming this is a number.
SystemCall: { editable: true }
}
});