【发布时间】:2011-02-02 22:18:22
【问题描述】:
升级后出现问题:
- jqGrid 从 3.5.3 到 3.8.2
- jquery 从 1.3.2 到 1.4.4
- jquery-ui 从 1.7.2 到 1.8.8
我的应用程序有 jqueryui 选项卡。第三个选项卡有一个 jqGrid 控件。 如果我在第三个选项卡上重新加载,那么网格可以正常工作。但是,如果在第一个选项卡上重新加载,然后单击第三个选项卡,则不会显示网格。
Firebug 向我显示“jqGrid 不是函数”错误。
在论坛中搜索表明问题是 grid.loader.js 中的 pathtojsfiles 不正确
我的前缀是 document.URL,如下所示:
function jqGridInclude()
{
var pathtojsfiles = document.URL + "script/jqGrid/src/"; // need to be ajusted
...
}
如果您将 pathtojsfiles 设置为错误的值,您会在 Firebug 中看到“找不到文件”错误。一切正常。
http://forum.jquery.com/topic/jqgrid-is-not-a-function
这个线程有一个死胡同: @milenaa:“起初我认为这是一个路径问题,因为我以前已经遇到过,但它的工作原理是这样的:我有一个菜单,它调用一些返回一些数据的服务器端控制器,或者我为它们发送一些数据. 当我单击调用稍后调用 jqgrid 函数的控制器的链接时,它可以工作。但是,如果我首先调用另一个函数,jqgrid 不起作用。该页面包含两种情况所需的所有js。 就像其他函数不让 jqgrid 工作一样……但我不知道为什么……”
读到这里,我觉得我也有类似的问题。 我不得不承认我对 Javascript 的执行模型并不熟悉。 有关如何解决或调试此问题的任何想法?
【问题讨论】:
标签: javascript jquery jquery-ui jqgrid