【问题标题】:Kendo UI - Uncaught TypeErrorKendo UI - 未捕获的 TypeError
【发布时间】:2016-01-05 14:12:12
【问题描述】:

因此,在我的视图文件中,有一个条目列表,我的目标是导航到一个屏幕,当您单击它们时会显示有关这些条目的详细信息。这是列表视图的代码:

<ul id="mainListView" data-role="listview" data-style="inset" 
    data-click="app.viewModels.dataViewModel.navigateToEntry">
</ul>  

这是它在 viewModel 中指向的方法:

navigateToEntry: function(e) {
  app.mobileApp.navigate("#views/entryView.html?entno=" + e.dataItem.entno);
}

问题是当我第一次点击它时,我得到了这个:

“未捕获的类型错误:无法读取未定义的属性 'entno'”

第 2 次、第 3 次等时间它工作正常,但第 1 次总是抛出此错误。任何想法如何解决它?谢谢!

【问题讨论】:

  • 很难说什么不起作用。我试图重现此错误,但在我的简单截图中一切正常:dojo.telerik.com/oNUja。你能在那里重现这个错误吗?
  • 您好 Jaroslaw,感谢您的意见。经过更多挖掘后,我认为由于某种原因该函数被调用了 2 次:Object {target: P.fn.init[1], item: P.fn.init[1], dataItem: undefined, button: undefined, sender: b.e…d.init…} Object {target: P.fn.init[1], item: P.fn.init[1], dataItem: m…l.k…o.d…a.M…l.d…e.init, button: undefined, sender: b.e…d.init…} 这是我在 navigateToEntry 函数中添加 console.log(e) 时控制台的输出。
  • 或者它返回 2 个对象,我对剑道很陌生,所以不确定。

标签: javascript jquery list kendo-ui telerik


【解决方案1】:

请检查此代码:

navigateToEntry: function(e) {
    if(e.dataItem !== undefined){
        app.mobileApp.navigate("#views/entryView.html?entno=" + e.dataItem.entno);
    }
}

现在第一次点击有效还是什么都不做?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-12
    • 2021-10-09
    • 2018-08-28
    • 2014-08-07
    相关资源
    最近更新 更多