我希望有人能帮助我。这里的例子:
http://jsfiddle.net/falafelsoftware/9RQy6/
如果我创建视图模型,效果很好,如下所示
var viewModel = kendo.observable
但我使用
var viewModel = kendo.data.ObservableObject.extend
以创建视图模型,就像 Telerik Appbuilder 中的许多示例一样。问题是使用该语法,视图模型的内部函数不知道网格的身份 - 其对象值返回 null。
即视图模型中调用的方法:
var grid = $("#mygrid").data("kendoGrid") returns null
如果可能的话,有人可以指出为什么会这样吗?
viewModel = kendo.data.ObservableObject.extend({
app.candwService = {
// other functions ...
//your csv export function:
exportCsv: function (gridId, fileName) {
....
var grid = $("#mygrid").data("kendoGrid"); //=null
//ABOVE GRID IS NULL
}
viewModel: new myViewModel()
};
})(window);
有趣的是,这工作正常:
window.$("#WineEventsGrid").data("kendoGrid")
所以现在继续在代码中使用它,但如果有什么我应该做不同的事情/或者我正在做不协调的事情,我很想知道。
感谢您朝着正确的方向推动。
我想我几乎有答案,只是作用域为窗口对象。一切进展顺利。