ASP.Net下使用ExtJS报“Ext未定义”错误的原因

新项目,客户要求界面要“炫”。经过简单对比,打算尝试在ASP.Net下引用ExtJS3.4来满足用户需求。

 

根据项目需要,第一个实例,选择了在ASP.Net下显示树形列表(TreeGrid)。其实就是把ExtJs官网上的TreeGride的例子,由静态页面,改为动态页面实现。

 

复制代码后,运行,发现TreeGrid的框架显示正常,但不显示数据。遂按照extjs压缩包中的web.config的内容,修改了我的工程里的web.config。然后,悲剧来了。

 

运行代码后,总是报“Ext未定义”的错误。上网搜索解决方法,发现基本上都是两个原因造成了该项错误。

1、要按照固定顺序引用三个文件:

/resouces/css/ext-all.css

/adapter/ext/ext-base.js

/ext-all.js

 

我是直接复制的官网实例,因此这条原因对我的问题无效。

 

2、文件路径问题,有人将所有需引用的文件都拷贝到了实例程序所在目录(相当于避免了在程序用使用相对路径引用文件)

我尝试了,问题依旧。而且,即便此方法有效,我也不可能应用。因为我不是做一个实例就ok的。对于整个工程,此方法显然不适合。

建议发现因文件路径问题导致错误的同学,看看你的IIS是否开启了“启用父路径”的选项,如果没有,打开它。

 

折腾了一个下午,我终于发现产生错误的愚蠢原因。

3、我将extjs压缩包中的web.config文件也复制到了asp.net工程下,程序在执行时,同时读取了两个web.config文件,这才导致了"Ext未定义”错误。

至于具体为什么会报这个错误,目前还不清楚。

 

希望后面的学习和实践不要再犯类似的错误了。

 

 

 

posted on 2012-06-05 17:50  EricZhen  阅读(1606)  评论(0编辑  收藏  举报