A. 深入浅出Extjs的完整目录
第1章EXT概述 11.1下载EXT发布包 11.2如何查看EXT自带的API和示例 11.3为什么有些示例必须放在服务器上才能看到效果 21.4Hello World 21.4.1直接使用下载的发布包 21.4.2在项目中使用EXT 31.5为什么页面提示找不到图片 31.6辅助开发 41.6.1调试工具Firebug 41.6.2开发利器Spket 71.7本章小结 10第2章EXT框架基础 112.1EXT的事件和类 112.1.1自定义事件 112.1.2浏览器事件 132.1.3Ext.lib.Event 132.1.4Ext.util.Observable 142.1.5Ext.EventManager 172.1.6Ext.EventObject 192.2EXT的核心组件 202.2.1Ext.Component 202.2.2Ext.BoxComponent 222.2.3Ext.Container 232.2.4Ext.Panel 242.2.5Ext.TabPanel 242.3本章小结 27第3章表格控件 283.1Grid的特性简介 283.2制作一个简单的Grid 293.3Grid常用功能详解 323.3.1部分属性功能 323.3.2自主决定每列的宽度 333.3.3让Grid支持按列排序 353.3.4解决中文排序 353.3.5显示日期类型数据 373.4在单元格里显示红色的字、图片和按钮 383.5给Grid的行和列设置颜色 413.6自动显示行号和复选框 423.6.1自动显示行号 433.6.2复选框 443.7选择模型 453.8表格视图--Ext.grid.GridView 463.9表格分页 473.9.1为Grid添加分页工具条 483.9.2通过后台脚本获得分页数据 493.9.3分页工具栏显示在Grid的顶部 513.9.4让EXT支持前台排序 523.10后台排序 533.11可编辑表格控件--EditorGrid 553.11.1制作一个简单的EditorGrid 553.11.2添加一行数据 563.11.3保存修改结果 583.11.4验证EditGrid中的数据 593.11.5限制输入数据的类型 603.12属性表格控件--PropertyGrid 633.12.1PropertyGrid 643.12.2只能看不能动的PropertyGrid 653.12.3强制对name列排序 653.12.4根据name获得value 663.12.5自定义编辑器 663.13分组表格控件--group 663.13.1分组表格简介 673.13.2分组表格视图Ext.grid.GroupingView 683.14可拖放的表格 693.14.1拖放改变表格的大小 693.14.2在同一个表格里拖放 703.14.3表格之间的拖放 723.14.4表格与树之间的拖放 733.15Grid与右键菜单 733.16本章小结 74第4章表单与输入控件 764.1制作一个表单 764.2FormPanel和BasicForm详解 774.3EXT支持的控件 774.3.1控件继承图 774.3.2表单控件 784.3.3基本输入控件Ext.form.Field 784.3.4文本输入控件Ext.form.TextField 794.3.5多行文本输入控件Ext.form.TextArea 804.3.6日期输入控件Ext.form.DateField 804.3.7时间输入控件Ext.form.TimeField 814.3.8在线编辑器Ext.form.HtmlEditor 814.3.9隐藏域Ext.form.Hidden 824.3.10下拉输入框Ext.form.TriggerField 824.4使用表单提交数据 834.4.1EXT默认的提交形式 834.4.2使用HTML原始的提交形式 854.4.3单纯Ajax 854.5数据校验 864.5.1输入不能为空 864.5.2最大长度和最小长度 874.5.3借助vtype 884.5.4自定义校验规则 884.5.5算不上校验的NumberField 884.5.6使用后台返回的校验信息 894.6表单布局 904.6.1默认的平铺布局 904.6.2平行分列布局 914.6.3在布局中使用fieldset 934.6.4在fieldset中使用布局 954.6.5自定义布局:在表单中加入图片 964.7ComboBox、datefield和timefield详解 974.7.1ComboBox简介 984.7.2将Select转换成ComboBox 994.7.3ComboBox结构详解 994.7.4使用远程数据 1014.7.5ComboBox的高级配置 1024.7.6监听用户选择了哪条数据 1044.7.7使用本地数据实现省、市、县级联 1044.7.8使用后台数据实现省、市、县级联 1074.8复选框和单选框 1104.8.1复选框 1104.8.2单选框Radio 1114.9文件上传 1124.10自动把数据填充到表单中 1134.11本章小结 114第5章树形结构 1165.1TreePanel的基本使用 1165.1.1创建一棵树 1165.1.2为树生枝展叶 1175.1.3tree的配置 1185.1.4使用TreeLoader获得数据 1195.1.5读取本地JSON数据 1215.1.6Struts 2的JsonPlugin 1215.1.7使用JSP提供后台数据 1225.2树的事件 1255.3右键菜单 1265.4修改节点的默认图标 1275.5从节点弹出对话框 1285.6节点提示信息 1295.7为节点设置超链接 1295.8直接修改树节点名称 1305.9树形的拖放 1315.9.1节点拖放的三种形式 1315.9.2叶子不能append 1315.9.3判断拖放的目标 1325.9.4树之间的拖放 1345.10树形过滤器TreeFilter 1355.11利用TreeSorter对树进行排序 1375.12树形节点视图--Ext.tree.TreeNodeUI 1385.13表格与树形的结合--Ext.tree.ColumnTree 1395.14本章小结 142第6章拖放 1436.1拖放简介 1436.2拖放的简单应用 1436.3拖放组件体系 1446.4拖放的事件 1466.5高级拖放 1486.5.1Basic 1486.5.2Handle 1496.5.3On Top 1506.5.4Proxy 1516.5.5Group 1526.5.6Grid 1546.5.7Circle 1556.5.8Region 1576.6本章小结 158第7章弹出窗口 1597.1Ext.MessageBox 1597.1.1Ext.MessageBox.alert() 1597.1.2Ext.MessageBox.confirm() 1607.1.3Ext.MessageBox.prompt() 1607.2对话框的更多配置 1617.2.1可以输入多行的输入框 1617.2.2自定义对话框的按钮 1627.2.3进度条 1627.2.4动画效果 1647.3Ext.window的常用属性 1647.3.1创建一个窗口 1647.3.2窗口的最大化和最小化 1657.3.3窗口的隐藏与销毁 1677.3.4防止窗口超出浏览器 1677.3.5设置窗口中的按钮 1697.3.6窗口的其他配置选项 1707.4窗口分组 1717.5向窗口中放入各种控件 1727.5.1在窗口中加入表格 1727.5.2在窗口中加入表单 1737.5.3复杂布局 1747.6本章小结 176第8章布局 1778.1布局的用途 1778.2最简单的布局FitLayout 1798.3常用的边框布局BorderLayout 1828.3.1设置子区域的大小 1848.3.2使用split并限制它的范围 1858.3.3子区域的展开和折叠 1878.4制作伸缩菜单的布局--Accordion 1918.5实现操作向导的布局--CardLayout 1928.6控制位置和大小的布局--AnchorLayout和AbsoluteLayout 1948.7表单专用的布局FormLayout 1998.8分列式的布局ColumnLayout 2008.9表格状的布局TableLayout 2028.10与布局相关的其他知识 2048.10.1超类Ext.Conainter的公共配置与xtype的概念 2048.10.2layout的超类Ext.layout.ContainerLayout 2058.10.3不指定任何布局时会发生的情况 2068.10.4使用Viewport对整个页面进行布局 2068.10.5使用嵌套实现复杂布局 2078.11本章小结 210第9章工具栏和菜单 2119.1简单菜单 2119.2向菜单中添加分隔线 2129.3多级菜单 2139.4高级菜单 2149.4.1多选菜单和单选菜单 2149.4.2日期菜单 2169.4.3颜色菜单 2169.4.4Ext.menu.Adapter菜单适配器 2179.4.5使用Ext.menu.MenuMgr统一管理菜单 2209.5工具栏组件详解 2209.5.1Ext.Toolbar.Button 2219.5.2Ext.Toolbar.TextMenu 2219.5.3Ext.Toolbar.Spacer 2229.5.4Ext.Toolbar.Separator 2229.5.5Ext.Toolbar.Fill 2239.5.6Ext.Toolbar.SplitButton 2239.5.7为工具条添加HTML标签 2249.5.8为工具条添加输入控件 2259.6分页工具条Ext.PagingToolbar 2259.6.1Ext.PagingToolbar的基本用法 2259.6.2向Ext.PagingToolbar添加按钮组件 2269.7右键弹出菜单 2279.8本章小结 229第10章数据存储与传输 23010.1Ext.data简介 23010.2Ext.data.Connection 23010.3Ext.data.Record 23210.4Ext.data.Store 23310.4.1基本应用 23310.4.2对数据进行排序 23410.4.3从store中获取数据 23410.4.4更新store中的数据 23610.4.5加载及显示数据 23710.4.6其他功能 23810.5常用proxy 23910.5.1MemoryProxy 23910.5.2HttpProxy 24010.5.3ScriptTagProxy 24010.6常用Reader 24110.6.1ArrayReader 24110.6.2JsonReader 24210.6.3XmlReader 24310.7高级store 24510.8EXT中的Ajax 24610.8.1最容易看到的Ext.Ajax 24610.8.2Ext.lib.Ajax是更底层的封装 24710.9关于scope和createDelegate() 24710.10DWR与EXT整合 24910.10.1在EXT中直接使用DWR 24910.10.2DWRProxy 25010.10.3DWRTreeLoader 25210.10.4DWRProxy和ComboBox 25310.11localXHR支持本地使用Ajax 25410.12本章小结 255第11章实用工具 25611.1EXT提供的常用函数 25611.1.1onReady函数 25611.1.2get函数 25711.1.3query函数和select函数 26011.1.4encode函数和decode函数 26311.1.5extend函数 26511.1.6apply和applyIf函数 26611.1.7namespace函数 26611.1.8Ext.isEmpty函数 26711.1.9Ext.each函数 26811.1.10Ext.DomQuery 26911.2用DomHelper和Template动态生成HTML 27211.2.1用DomHelper生成小片段 27211.2.2Ext.DomHelper.applyStyles函数 27511.2.3Template模板 27611.2.4Ext.DomHelper.createTemplate函数 27811.2.5复杂模板XTemplate 27911.3用Ext.Utils.CSS切换主题 28111.4悬停提示 28211.4.1初始化 28211.4.2注册提示 28311.4.3标签提示 28311.4.4全局配置 28311.4.5个体配置 28411.5使用Ext.state保存状态 28511.6fx实现的动画效果 28811.7局部更新网页内容 28811.8Ext.util.Format 29011.9使用Ext.util.CSS管理CSS样式 29011.10使用Ext.util.ClickRepeater处理点击事件 29111.11使用Ext.util.DelayedTask延时执行函数 29311.12使用Ext.util.TaskRunner执行循环任务 29411.13混合型集合Ext.util.MixedCollection 29511.14使用Ext.util.TextMetrices获得文本所占的高度和宽度 29911.15Ext.KeyNav处理导航按键 30011.16Ext.KeyMap为对象绑定按键功能 30211.17扩展 30411.17.1扩展Date 30411.17.2扩展String 30611.17.3扩展Function 30611.17.4扩展Number 30811.17.5扩展Array 30811.18Ext.ux.Portal 30911.19Ext.Desktop 31211.20本章小结 316第12章一个完整的EXT应用 31712.1确定整体布局 31712.2使用HTML和CSS设置静态信息 31912.3对学生信息进行数据建模 32012.4在页面中显示学生信息列表 32412.5添加表单编辑学生信息 32912.6为表单添加提交事件 33212.7清空表单信息 33512.8删除指定的学生信息 33612.9在Grid和Form之间进行数据交互 33712.10本章小结 338第13章通过Ext Framework合理地应用EXT 33913.1Ext Framework简介 33913.2Ext Framework架构解析 34213.2.1主要的第三方包 34213.2.2后台类关系图 34213.2.3前台组件关系图 34413.3本章小结 347附录A EXT常见问题 348附录B EXT对AIR的支持 355附录C EXT的版本变迁 364

B. 请教FineUI,在vs2010中控件不能识别的问题!
FineUI(ExtAspNet)控件 v3.2.5源码
源码描述:
关于FineUI
FineUI是由ExtAspNet改名而来的
基于 ExtJS 的专业 ASP.NET 2.0 控件库。
FineUI的使命
创建 No javaScript,No CSS,No UpdatePanel,No ViewState,No WebServices 的网站应用程序。
支持的浏览器
IE 7.0+、Firefox 3.6+、Chrome 3.0+、Opera 10.5+、Safari 3.0+
v3.2.5更新日志:
+更新extjs库到v3.4.1.1。
-解决IE9/IE10下的UI显示问题。
-解决表格控件在谷歌浏览器下,最后一列的标题栏没对齐的问题。
-解决IE7/Chrome下有时不能拖动窗体的问题。
+删除PageManager的EnableAspnetSubmitButtonAjax属性(shiningrise、夏雨雪(joe) )。
-原因是低版本IE浏览器不允许使用JS修改input标签的type属性。
-我们需要手工设置Asp.Net按钮的UseSubmitBehavior=false,更新示例aspnet/aspnet.aspx。
-修正extjs的Ext.lib.Ajax.serializeForm函数,使其在序列化表单时不包含submit按钮,从而避免触发后台submit按钮的事件。
-更新示例aspnet/aspnet.aspx。
-更新示例config/release_time_chart.htm。
+表格增强。
-增加RowVerticalAlign属性(默认为Middle),以后所有表格中的行文字默认都是垂直居中显示。
+增加EnableHeaderMenu属性(默认为false),支持在表格标题栏下拉菜单中显示隐藏列以及排序操作。
-增加EnableColumnHide属性(默认为true),是否可以标题栏下拉菜单中显示隐藏列。
-增加示例grid/grid_hdmenu_hidecolumn.aspx。
-增加示例grid/grid_hdmenu_sorting.aspx。
+增加EmptyText属性,指定数据为空时显示在内容区域的文本,可以是HTML标签。
C. extjs如何获取Grid中某一行某一列的值
Ext.grid.GridView.getCell( Number row, Number col ):取得指定单元格对应的td元素
例如:
varsStr=Ext.grid.GridView.getCell(0,0);
再给你一些常用的方法、属性
1、Ext.grid.GridPanel
主要配置项:
store:表格的数据集
columns:表格列模式的配置数组,可自动创建ColumnModel列模式
autoExpandColumn:自动充满表格未用空间的列,参数为列id,该id不能为0
stripeRows:表格是否隔行换色,默认为false
cm、colModel:表格的列模式,渲染表格时必须设置该配置项
sm、selModel:表格的选择模式,默认为Ext.grid.RowSelectionModel
enableHdMenu:是否显示表头的上下文菜单,默认为true
enableColumnHide:是否允许通过标题中的上下文菜单隐藏列,默认为true
loadMask:是否在加载数据时显示遮罩效果,默认为false
view:表格视图,默认为Ext.grid.GridView
viewConfig:表格视图的配置对象
autoExpandMax:自动扩充列的最大宽度,默认为1000
autoExpandMin:自动扩充列的最小宽度,默认为50
columnLines:是否显示列分割线,默认为false
disableSelection:是否禁止行选择,默认为false
enableColumnMove:是否允许拖放列,默认为true
enableColumnResize:是否允许改变列宽,默认为true
hideHeaders:是否隐藏表头,默认为false
maxHeight:最大高度
minColumnWidth:最小列宽,默认为25
trackMouseOver:是否高亮显示鼠标所在的行,默认为true
主要方法:
getColumnModel():取得列模式
getSelectionModel():取得选择模式
getStore():取得数据集
getView():取得视图对象
reconfigure( Ext.data.Store store, Ext.grid.ColumnModel colModel ):使用一个新的数据集和列模式重新配置表格组件
2、Ext.grid.Column
主要配置项:
id:列id
header:表头文字
dataIndex:设置列与数据集中数据记录的对应关系,值为数据记录中的字段名称。如果没有设置该项则使用列索引与数据记录中字段的索引进行对应
width:列宽
align:列数据的对齐方式
hidden:是否隐藏列,默认为false
fixed:是否固定列宽,默认为false
menuDisabled:是否禁用列的上下文菜单,默认为false
resizable:是否允许改变列宽,默认为true
sortable:是否允许排序,默认为true
renderer:设置列的自定义单元格渲染函数
传入函数的参数有:
value:数据的原始值
metadata:元数据对象,用于设置单元格的样式和属性,该对象包含的属性有:
css:应用到单元格TD元素上的样式名称
attr:一个HTML属性定义字符串,例如'style="color:blue"'
record:当前数据记录对象
rowIndex:单元格的行索引
colIndex:单元格的列索引
store:数据集对象
xtype:列渲染器类型,默认为gridcolumn,其它可选值有booleancolumn、numbercolumn、datecolumn、 templatecolumn等
editable:是否可编辑,默认为true
editor:编辑器
groupName:
emptyGroupText:
groupable:
3、Ext.grid.ColumnModel
主要配置项:
columns:字段数组
defaultSortable:是否进行默认排序,默认为false
defaultWidth:默认宽度
主要方法:
findColumnIndex( String col ):根据给定的dataIndex查找列索引
getColumnById( String id ):取得指定id对应的列
getColumnCount( Boolean visibleOnly ):取得列总数
getColumnHeader( Number col ):取得列的表头
getColumnId( Number index ):取得列id
getDataIndex( Number col ):取得列对应的数据字段名
getIndexById( String id ):取得列索引
getTotalWidth( Boolean includeHidden )
isCellEditable( Number colIndex, Number rowIndex )
isFixed()
isHidden( Number colIndex )
setColumnHeader( Number col, String header )
setColumnWidth( Number col, Number width, Boolean suppressEvent )
setDataIndex( Number col, String dataIndex )
setEditable( Number col, Boolean editable )
setEditor( Number col, Object editor )
setHidden( Number colIndex, Boolean hidden )
setRenderer( Number col, Function fn )
4、Ext.grid.AbstractSelectionModel
主要方法:
lock():锁定选择区域
unlock():解锁选择区域
isLocked():当前选择区域是否被锁定
5、Ext.grid.CellSelectionModel
主要方法:
clearSelections( Boolean preventNotify ):清除选择区域
getSelectedCell():取得当前选择的单元格,返回一数组,其格式:[rowIndex, colIndex]
hasSelection():当前是否有选择区域
select( Number rowIndex, Number colIndex, [Boolean preventViewNotify], [Boolean preventFocus], [Ext.data.Record r] ):选择指定单元格
6、Ext.grid.RowSelectionModel
主要配置项:
singleSelect:是否单选模式,默认为false,即可以选择多条数据
主要方法:
clearSelections( [Boolean fast] ):清除所有选择区域
deselectRange( Number startRow, Number endRow ):取消范围内的行选择
deselectRow( Number row, [Boolean preventViewNotify] ):取消指定行的选择状态
each( Function fn, [Object scope] ):遍历所有选择行,并调用指定函数。当前被选行将传入该函数中
getCount():得到选择的总行数
getSelected():得到第一个被选记录
getSelections():得到所有被选记录的数组
hasNext():判断当前被选行之后是否还有记录可以选择
hasPrevious():判断当前被选行之前是否还有记录可以选择
hasSelection():是否已选择了数据
isIdSelected( String id ):判断指定id的记录是否被选择
isSelected( Number/Record index ):判断指定记录或记录索引的数据是否被选择
selectAll():选择所有行
selectFirstRow():选择第一行
selectLastRow( [Boolean keepExisting] ):选择最后行
keepExisting:是否保持已有的选择
selectNext( [Boolean keepExisting] ):选择当前选择行的下一行
selectPrevious( [Boolean keepExisting] ):选择当前选择行的上一行
selectRange( Number startRow, Number endRow, [Boolean keepExisting] ):选择范围内的所有行
selectRecords( Array records, [Boolean keepExisting] ):选择一组指定记录
selectRow( Number row, [Boolean keepExisting], [Boolean preventViewNotify] ):选择一行
row:行索引
selectRows( Array rows, [Boolean keepExisting] ):选择多行
rows:行索引数组
7、Ext.grid.CheckboxSelectionModel
主要配置项:
singleSelect:是否单选模式,默认为false,即可以选择多条数据
checkOnly:是否只能通过点击checkbox列进行选择,默认为false
sortable:是否允许checkbox列排序,默认为false
width:checkbox列的宽度,默认为20
8、Ext.grid.RowNumberer
主要配置项:
header:行号列表头显示的内容
width:列宽,默认为23
9、Ext.grid.GridView
主要配置项:
enableRowBody:是否包含行体
sortAscText:表格标题菜单中升序的文字描述
sortDescText:表格标题菜单中降序的文字描述
columnsText:表格标题菜单中列对应的文字描述
autoFill:是否自动扩展列以充满整个表格,默认为false
forceFit:是否强制调整表格列宽以适用表格的整体宽度,防止出现水平滚动条,默认为false
主要方法:
focusCell( Number row, Number col ):将焦点移到指定单元格
focusRow( Number row ):将焦点移动指定行
getCell( Number row, Number col ):取得指定单元格对应的td元素
getHeaderCell( Number index ):取得指定表头对应的td元素
getRow( Number index ):取得指定行对应的tr元素
getRowClass( Record record, Number index, Object rowParams, Store store ):得到附加到表格行上的样式名
record:当前行的数据记录对象
index:当前行的索引
rowParams:渲染时传入到行模板中的配置对象,通过它可以为行体定制样式,该对象只在enableRowBody为true时才生效,可能的属性 如下:
body:渲染到行体中的HTML代码片段
bodyStyle:应用到行体tr元素style属性的字符串
cols:应用到行体td元素colspan属性的值,默认为总列数
store:表格数据集
refresh( [Boolean headersToo] ):刷新表格组件
scrollToTop():滚动表格到顶端
实战
1:让gridpanel的滚动条自动滚动到最后一条记录(动态插入数据):
grid.getView().focusRow(vehiclePassInfoGrid.getStore().getCount()-1);
2:清除gridpanel中有行被选择的状态:
grid.getSelectionModel().clearSelections();
D. Extjs5.0的treepanel节点上的文件夹图标怎么去掉
先定义一个CSS。
<style>
.no-icon{display:none;}
</style>
然后在你的JSON树节点加上
iconCls : 'no-icon'
varmenuStore=Ext.create('Ext.data.TreeStore',{
model:'Menu',
root:{
expanded:true,
children:[{
text:'test',
expanded:true,
children:[{
text:'test11',
iconCls:'no-icon',
leaf:true
},{
text:'test22',
iconCls:'no-icon',
leaf:true
}]
}]
}
});效果图:

满意请采纳。
E. Extjs Store的Reader的root属性为什么不能是子属性
Ext.define("NP.store.Menus", {
extend : "Ext.data.TreeStore",
model : "NP.model.Menu",
root : {
expanded : true,
text : "系统菜单",
},
proxy : {
type : "rest",
url : "menu",
reader : {
type : "json",
root : "data",//这里如果设置成data.content就不对
successProperty : "success"
}
}
});
服务器返回的JSON数据格式为:
Js代码
{
"data": {
"content": [
{
"id": 1,
"name": "系统管理",
"url": null,
"title": "系统管理",
"icon": null,
"parent": null,
"children": [],
"roles": [],
"userGroups": []
}
]
},
"success": true
}
因为我的模型数据集合是在数据的data.content里,而如果Store.proxy.reader.root设置成data.content 就会报错:Uncaught TypeError: Cannot read property 'content' of undefined
这是什么原因啊 ? 请指点啊
回复讨论(解决方案)
我发现当root设为data.content时,Ext根本没往后台发送请求
root指的就是根节点嘛。只能是data。
不过你可以把content去掉。
{
"data": {
"id": 1,
"name": "系统管理",
"url": null,
"title": "系统管理",
"icon": null,
"parent": null,
"children": [],
"roles": [],
"userGroups": []
},
"success": true
}
root指的就是根节点嘛。只能是data。
不过你可以把content去掉。
{
"data": {
"id": 1,
"name": "系统管理",
"url": null,
"title": "系统管理",
"icon": null,
"parent": null,
"children": [],
"roles": [],
"userGroups": []
},
"success": true
}
因为Data里面不仅包含了content还包含一些其他的信息,最好是不要改动后台代码
有其他方法来实现这个效果吗
treeStore 最好单独load,不要把和tree无关的信息也放到json里
另外,root应该是children。
当然,你也可以拿到json后,自己按从属关系往treestore里填加数据。
var node = root.createNode( {
id:data.content.id,
...
} );
root.appendChild(node);
3q\
treeStore 最好单独load,不要把和tree无关的信息也放到json里
另外,root应该是children。
当然,你也可以拿到json后,自己按从属关系往treestore里填加数据。
var node = root.createNode( {
id:data.content.id,
...
} );
root.appendChild(node);
F. ExtJS grid表头如何增加下拉项
extjs自己提供复选框列
//checkbox列
varfilecheckbox=newExt.grid.CheckboxSelectionModel();
//GridPanel
varfileGrid=newExt.grid.GridPanel({
store:fileStore,
columns:[
newExt.grid.RowNumberer(),//显示列数
filecheckbox,//显示复选框列
{//其他显示列}]
//省略其他属性
});
这样你就可以而得到一个复选框,可以进行单选、全选了
如果你想自己定义的话,也可以
//定义filters
varfilters=newExt.ux.grid.GridFilters({
//
encode:encode,//jsonencodethefilterquery
local:local,//defaultstofalse(remotefiltering)
filters:[{
type:'numeric',
dataIndex:'id'
},{
type:'string',
dataIndex:'company',
disabled:true
},{
type:'numeric',
dataIndex:'price'
},{
type:'date',
dataIndex:'date'
},{
type:'list',
dataIndex:'size',
options:['small','medium','large','extralarge'],
phpMode:true
},{
type:'boolean',
dataIndex:'visible'
}]
});
//
//
//thefiltertypes(
varcreateColModel=function(finish,start){
varcolumns=[{
dataIndex:'id',
header:'Id',
//=true
//tousestore'sfield'stypeproperty(iftypepropertynot
//'auto'which
//GridFilterswillassumetobe'StringFilter'
filterable:true
//,filter:{type:'numeric'}
},{
dataIndex:'company',
header:'Company',
id:'company',
filter:{
type:'string'
//
//,disabled:true
}
},{
dataIndex:'price',
header:'Price',
filter:{
//type:'numeric'//
}
},{
dataIndex:'size',
header:'Size',
filter:{
type:'list',
options:['small','medium','large','extralarge']
//,phpMode:true
}
},{
dataIndex:'date',
header:'Date',
renderer:Ext.util.Format.dateRenderer('m/d/Y'),
filter:{
//type:'date'//
}
},{
dataIndex:'visible',
header:'Visible',
filter:{
//type:'boolean'//
}
}];
returnnewExt.grid.ColumnModel({
columns:columns.slice(start||0,finish),
defaults:{
sortable:true
}
});
};
然后
vargrid=newExt.grid.GridPanel({
colModel:createColModel(4),
plugins:[filters],
//这两个属性是重点,加上去就可以了
});
效果看图片。
建议你去下载官方的源代码,然后看其中的例子。
里面有一个就是如何自定义这个的

G. extjs项目打包的时候为什么添加的菜单项没有加载
以Extjs4.2为例进行说明吧。你可以根据你使用的版本不同做出对应调整。
首先,Menu依赖于类Ext.menu.Menu和必要的css文件。
1)如果你使用Sencha cmd打包的话,你需要查看有没有在requires字段里面包含进该类;例如:
requires:[ 'Ext.menu.*' ]
2)如果你包含了ext-all.js等之类的全部库的话,则应该不成问题;如果不行的话可以参看sdk自带的example里面的menu,加载menu如下:
Ext.require([
'Ext.menu.*',
]);
3)另外,如果使用Ext.ux包里面的一些辅助类时,菜单可能由于css文件不够,无法正常显示。这是需要将对应的ux目录下的css文件拷贝到你的工程下(Extjs 4.2目前不支持ux下css文件自动打包)。
例如gird组件的筛选菜单,如RangeMenu的话则需要将对应的RangeMenu.css拷贝到你的工程目录下。