Javascript Can';t在extjs中向div添加网格
如果我通过“renderTo”参数(请参见下面的“b”)将按钮添加到面板中,它将非常有效:Javascript Can';t在extjs中向div添加网格,javascript,extjs,Javascript,Extjs,如果我通过“renderTo”参数(请参见下面的“b”)将按钮添加到面板中,它将非常有效: //create div in javascript var extJSTest = document.createElement('div'); //append to main mainPanel.appendChild(extJSTest); //'get' panel through EXT (just adds a wrapper?) var myDiv = Ext.get(extJSTes
//create div in javascript
var extJSTest = document.createElement('div');
//append to main
mainPanel.appendChild(extJSTest);
//'get' panel through EXT (just adds a wrapper?)
var myDiv = Ext.get(extJSTest);
var b = Ext.create('Ext.Button', {
text: 'Click me!!!!',
renderTo: myDiv,
handler: function() {
alert('You clicked the button!')
}
});
但是,如果我将“b”替换为以下代码(即,我想将按钮替换为网格,与SimpleStore和一些数据连接起来)
我得到这个错误:
未捕获的TypeError:无法读取null的属性“dom”
可在ext all debug的第28211行找到。代码如下所示:
if (!me.container) {
me.container = Ext.get(me.el.dom.parentNode);
}
<script>
Ext.require([
'Ext.data.*',
'Ext.grid.*',
'Ext.tree.*'
]);
Ext.onReady (function () {
//application is built in here
});
</script>
有人知道我想添加网格时的问题是什么吗
另外,我的index.html如下所示:
if (!me.container) {
me.container = Ext.get(me.el.dom.parentNode);
}
<script>
Ext.require([
'Ext.data.*',
'Ext.grid.*',
'Ext.tree.*'
]);
Ext.onReady (function () {
//application is built in here
});
</script>
外部要求([
“Ext.data.*”,
“Ext.grid.*”,
“Ext.tree.*”
]);
Ext.onReady(函数(){
//应用程序是在这里构建的
});
这是一把小提琴:
如果渲染到Ext.getBody(),效果很好,但如果渲染到自己的myDiv对象,它似乎有问题。我的问题解决方案 我把renderTo和add搞混了 我应该创建一个面板,并使用renderTo将其放置在DOM的某个位置,然后我可以创建一个网格,然后面板可以“添加”它
Ext.onReady (function () {
var myDiv = Ext.create('Ext.Panel',{
renderTo:Ext.getBody(),
})
var myData = [
['Apple',29.89],
['Ext',83.81]
];
var ds = new Ext.data.SimpleStore({
fields: [
{name: 'company'},
{name: 'price'}
]
});
ds.loadData(myData);
var grid = new Ext.grid.GridPanel({
store: ds,
columns: [
{header: "Company", width: 120, dataIndex: 'company'},
{header: "Price", width: 90, dataIndex: 'price'}
],
height: 180,
width: 900,
title: 'List of Packages'
});
myDiv.add(grid);
//document.body.appendChild(myDiv);
});
您的代码是否包装在
Ext.onReady
或Ext.application
中?是的…………您发布的代码似乎没有问题,问题一定在其他地方。外文版?其他控制台错误、警告?网格将自身呈现为不存在问题的现有div.ExtJS 4.2。没有其他错误我想我需要一个叫做ext-base.js的东西