zoukankan
html css js c++ java
ExtJS中如何扩展自定义的类
JS代码
1
/**/
/*
*
2
* ExtJs自定义PersonListGridPanel类
3
* 该类继承自GridPanel[使用Ext.extend(superClass,override Object)方法实现继承],
4
* 并override了该类的构造函数
5
* 构造函数内部继承自GridPanel的构造函数[apply(this,arguments)实现继承]
6
* 该类实现了如何对外部公布一个事件
7
* 在构造函数中添加一个事件[this.addEvents("事件名称")]
8
* 然后使用this.fireEvent("事件名称",参数)来发布此事件
9
* 最后在客户端调用的时候来订阅该事件
10
*/
11
PersonListGridPanel
=
Ext.extend(Ext.grid.GridPanel,
{
12
constructor:
function
(_url)
{
13
PersonListGridPanel.superclass.constructor.apply(
this
, [
{
14
renderTo: Ext.getBody(),
15
350
,
16
height:
200
,
17
frame:
true
,
18
layout:
"
form
"
,
19
tbar:[
{
20
text:
"
add
"
21
}
,
"
-
"
,
{
22
text:
"
update
"
23
}
,
"
-
"
,
{
24
text:
"
delete
"
25
}
],
26
enableColumnMove:
false
,
27
columns: [
{
28
header:
"
Name
"
,
29
menuDisabled:
true
,
30
dataIndex:
"
name
"
31
}
,
{
32
header:
"
Age
"
,
33
menuDisabled:
true
,
34
dataIndex:
"
age
"
35
}
,
{
36
header:
"
Sex
"
,
37
menuDisabled:
true
,
38
dataIndex:
"
sex
"
39
}
],
40
store:
new
Ext.data.JsonStore(
{
41
autoLoad:
true
,
42
url: _url,
43
fields: [
"
name
"
,
"
age
"
,
"
sex
"
]
44
}
),
45
46
selModel:
new
Ext.grid.RowSelectionModel(
{
47
singleSelect:
true
,
48
listeners:
{
49
"
rowselect
"
:
{
50
fn:
function
(_sel, _index, _r)
{
51
this
.fireEvent(
"
rowselect
"
, _r);
//
发布事件
52
}
,
53
scope:
this
54
}
55
}
56
}
)
57
58
}
]);
59
this
.addEvents(
"
rowselect
"
);
//
添加事件
60
}
61
}
)
62
前端调用代码
1
/**/
/*
*
2
* 前端调用自定义类(组件)
3
*/
4
Ext.onReady(
function
()
{
5
var
_grid
=
new
PersonListGridPanel(
"
http://localhost:3830/extjs/gridData.ashx
"
);
6
//
以下订阅该事件
7
_grid.on(
"
rowselect
"
,
function
(_r)
{
8
this
.getForm().loadRecord(_r);
9
}
,_form);
10
11
}
);
查看全文
相关阅读:
Linux基础命令(一)
You've made choice
protege推理
字符编码
第二次作业
数据类型-集合set
数据类型-元组&字典
数据类型-列表
数据类型-数值&字符串
流程控制之for循环
原文地址:https://www.cnblogs.com/xnxylf/p/1427243.html
最新文章
MyBatis动态Sql 的使用
数据库连接池
《即兴演讲》-如何创作即兴演讲脚本-做好准备
《即兴演讲》-即兴思维-保持尊重
《即兴演讲》-即兴思维-保持专注
《即兴演讲》-即兴思维-保持真实
《即兴演讲》-即兴思维-学会倾听
《即兴演讲》-即兴思维-具有领导意愿
樊登读书会《即兴演讲》-目录
mysql8 安装&问题解决
热门文章
spring boot rest api exception解决方案
mybatis-plus 乐观锁
java写入、解压缩zip文件后无法进行删除解决办法
Linux虚拟机三种网络配置
Linux模板机及集群相关操作整理
Linux基础命令(四)
Linux基础命令(三)
JsonObject判断一个json串中是否含有某个key值
项目启动中报错Address already in use: bind
Linux基础命令(二)
Copyright © 2011-2022 走看看