extjs grid报错。this.el.dom为空或不是对象。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了extjs grid报错。this.el.dom为空或不是对象。相关的知识,希望对你有一定的参考价值。

代码如下<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GBK"> <title>Hello World</title> <link rel="stylesheet" type="text/css" href="../resources/css/ext-all.css" /><!--这一个是引入ExtJs的默认样式--><script type="text/javascript" src="../adapter/ext/ext-base.js"></script><script type="text/javascript" src="../ext-all.js"></script><!--ExtJs所需要的核心脚本全部都在这两个js文件中。--><script type="text/javascript"> var cm = new Ext.grid.ColumnModel([header:'编号',dataIndex:'id',header:'名称',dataIndex:'name',header:'描述',dataIndex:'descn']);var data = [['1','name1','descn1'],['2','name2','descn2'],['3','name3','descn3'],['4','name4','descn4'],['5','name5','descn5']];var ds = new Ext.data.Store(proxy: new Ext.data.MemoryProxy(data),reader: new Ext.data.ArrayReader(, [name: 'id',name: 'name',name: 'descn']));ds.load();var grid = new Ext.grid.GridPanel('grid', ds: ds,cm: cm);grid.render();</script></head> <body> <div id="grid"></div></body> </html> 运行时候报错 this.el.dom为空或不是对象。不是菜鸟,初步接触extjs grid,根据文档学习,学习到extjs grid,文档DEMO不能运行,苦于无从寻求答案。不要分析,不要网上资料,examples里面的也不要,只要一个能运行的清晰的DEMO,其他的我自己会研究。采纳后加100分。

参考技术A <html>
<head>
<title>girl</title>
<link rel="stylesheet" type="text/css" href="../resources/css/ext-all.css" />
<script type="text/javascript" src="../adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="../ext-all-debug.js"></script>
<script type="text/javascript" src="../ext-lang-zh_CN.js"></script>
<script type="text/javascript" src="js/examples.js"></script>
<script>
var cm = new Ext.grid.ColumnModel([
header: '编号',
dataIndex: 'id'
,

header: '名称',
dataIndex: 'name'
,

header: '描述',
dataIndex: 'descn'
]);
var data = [['1', 'name1', 'descn1'], ['2', 'name2', 'descn2'], ['3', 'name3', 'descn3'], ['4', 'name4', 'descn4'], ['5', 'name5', 'descn5']];
var ds = new Ext.data.Store(
proxy: new Ext.data.MemoryProxy(data),
reader: new Ext.data.ArrayReader(,
[
name: 'id',
mapping: 0
,

name: 'name',
mapping: 1
,

name: 'descn',
mapping: 2
])
);
ds.load();
var grid = new Ext.grid.GridPanel(
//el: 'grid', //这一项不要配置
ds: ds,
cm: cm
);
</script>
</head>
<body onLoad="grid.render('grid');">
<div id="grid"></div>
</body>
</html>
参考技术B all.js"></script><!--ExtJs所需要的核心脚本全部都在这两个js文件中。--><script type="text/javascript"> var cm = new Ext.grid.ColumnModel([header:'编号',dataIndex:'id',header:'名称',dataIndex:'name',header:'描述',dataIndex:'descn']);var data = [['1','name1','descn1'],['2','name2','descn2'],['3','name3','descn3'],['4','name4','descn4'],['5','name5','descn5']];var ds = new Ext.data.Stor 参考技术C 你的写法有点奇怪。不过根据你的报错信息应该是没有渲染的对象。
错误应该出在grid.render()上,应该携程grid.render('grid'),引号的grid就是你页面上那个div的id本回答被提问者采纳

以上是关于extjs grid报错。this.el.dom为空或不是对象。的主要内容,如果未能解决你的问题,请参考以下文章

EXTJS 如何使grid的某一行字体颜色为红色

extjs中如何选中grid中的行,并设置该行不可编辑

ExtJs4.x怎么去除grid动态加载数据的提示

ExtJS--grid表格前多选列

如何在 ExtJS 5 中为 Grid 组件构建高级过滤器面板

Extjs Grid Grouping - 设置默认标题/值