我有一个即时工作的ExtJS / PHP应用程序,我一直遇到错误
Uncaught TypeError: Cannot read property 'add' of undefined
我正在使用的行如下;
parentPanel = Ext.getCmp('<?php echo $thename; ?>_<?php echo $formDetails ?>');
parentPanel.add(theGridPanel);
parentPanel.doLayout();
我不知道到底发生了什么。
任何帮助都很棒
答案 0 :(得分:3)
Ext.getCmp()用于通过ID查找DOM中的元素。
因此,请确保将正确的id传递给Ext.getCmp()。
如果您需要,请查看文档here
修改强>
扩展我的答案,因为我同意@ scebotari66在评论中提到的观点。
Ext.getCmp()仅用于查找extjs组件,而不是DOM中的任何html元素。
这意味着Ext.getCmp()不等于到document.getElementById()
我提到的'在DOM中找到一个元素'只是为了更容易理解命令getCmp()执行的任务,而实际上它从Ext.ComponentManager中获取具有给定ID的组件,而不是从DOM中获取
答案 1 :(得分:2)
JavaScript尝试在.add()
上调用undefined
。更确切地说。这一行:
Ext.getCmp('<?php echo $thename; ?>_<?php echo $formDetails ?>');
返回undefined
。
因此请确保更正您的查询。