【发布时间】:2012-11-15 06:06:37
【问题描述】:
下午好!
我正在尝试从 4.0.7 版升级到 4.1.1 版(作为 45 天免费试用版下载),以便在我们目前正在运行的应用程序中测试 4.1 版并查看我们可能需要进行多少更改在正式升级之前,我唯一要做的就是将我的 jsp 文件指向页面头部的新文件,如下所示:
<link rel="stylesheet" href="3rdParty/ext-4.1.1a/resources/css/ext-all.css"/>
<script type="text/javascript" charset="utf-8" src="3rdParty/ext-4.1.1a/ext-all-debug.js"></script>
而在我的jsp页面中,我正在做一些非常简单的事情,只是创建了一个按钮,我使用了这段代码:
<body>
<script type="text/javascript">
Ext.create('Ext.Button', {
text: 'Test window',
width: 75,
renderTo: Ext.getBody(),
handler: function() {
alert("the button worked"");
}
});
</script>
</body>
但是当我运行这个页面时什么都没有显示,当我使用谷歌浏览器的开发工具时,控制台显示我这个消息:
未捕获的类型错误:无法调用未定义的方法“createChild”
当我调试代码时,错误出现在文件 ext-all-debug.js:20687 中
getStyleProxy: function(cls) {
var result = this.styleProxyEl || (Ext.AbstractComponent.prototype.styleProxyEl = Ext.resetElement.createChild({
style: {
position: 'absolute',
top: '-10000px'
}
}, null, true));
result.className = cls;
return result;
},
我错过了什么步骤?,我是 extjs 的新手,据我了解,从 4.0.7 版本升级到 4.1.1 不应该涉及与某些不同的代码编写方式不同的许多步骤,可以有人帮帮我吗?
非常感谢!
【问题讨论】:
-
黑暗中的一枪 - 你试过把你的分机代码放在
Ext.onReady(function() {});中吗? -
Izhaki 是正确的,您的代码在完整的 dom 加载/准备好之前运行并且主体还不存在。把你的代码放在onReady的回调函数中。
-
你的 alert() 中还有一个额外的引号
标签: javascript extjs extjs4 extjs4.1