0

我想在创建 jqGrid 定义时捕获错误,例如 col_names 和 col_model 不匹配或单元格自定义格式时出现错误。 The purpose is to catch these errors and display as an overlay在网格占位符上。
如果我放置try catch outside grid definition,控制永远不会进入 catch 块,但错误默认显示为警报对话框。

请有任何建议。

4

1 回答 1

0

我认为大小不匹配的例子colNames不是colModel很好的例子。例如,您是否使用cnandcm作为值colNamescolModel参数,您可以在创建 jqGrid之前if (cn.length !== cm.length) {...}将其包含 在代码中。jqGrid 的当前代码执行相同的操作(请参见此处)。

一般来说,jqGrid 或其他插件如何报告错误并没有共同的方式。例如,jQuery 引入了jQuery.error函数,您通常可以覆盖该函数。问题是该函数将用于非常小的 jQuery 代码子集。所以在我看来,这真的帮不上什么忙。大多数 jQuery 函数没有输入参数的验证。因此,如果您使用错误的参数,您可能会产生不可预知的结果。

此外,jqGrid 代码的许多部分都是异步工作的。因此,应该主要以其他方式进行验证。例如,我建议您使用loadError回调。有关更多详细信息,请参阅答案另一个

于 2012-11-22T08:03:10.933 回答