- 浏览: 336800 次
- 性别:
- 来自: 武汉
最新评论
-
ynymf:
错位问题看这里:http://www.cnblogs.com/ ...
EXTJS制作的嵌套表格实例(点击一行,展开下面的子表) -
xlshlr:
code.php在哪????貌似么有找到这个文件
ExtJS带验证码登录框[新增回车提交] -
langfeng123ac:
二货,这种写法本地又不行,本地有图片,服务器上又没图片。。浪费 ...
JQUERY+ASP.NET的AJAX文件上传(含Demo) -
553718707:
楼主有没有解决方法啊?
EXTJS制作的嵌套表格实例(点击一行,展开下面的子表) -
553718707:
这个代码对于,子表格的列数很多的时候会出现子表格的列与数据行错 ...
EXTJS制作的嵌套表格实例(点击一行,展开下面的子表)
/**
* @title:新闻中心模块 * @author:余晓天 * @date:2009/2/13 */ /**初始化FormPanel***************************************************************************************************/ NewsFormPanel=Ext.extend(Ext.FormPanel,{ //传参 url:null, constructor:function(_cfg){ if(_cfg==null) _cfg={}; Ext.apply(this,_cfg); //初始化构造函数 NewsFormPanel.superclass.constructor.call(this,{ width:250, height:210, frame:true, resizable:false, layout:"form", labelWidth:60, buttonAlign:"center", defaultType:"textfield", baseCls:"x-plain", items:[ { name:"name", fieldLabel:"姓名", anchor:"90%", allowBlank:false, emptyText:"姓名不能为空" }, { xtype:"combo", mode:"local", value:"男", hiddenName:"sex", triggerAction:"all", displayField:"sex", readOnly:true, store:new Ext.data.SimpleStore( { fields:["sex"], data:[["男"],["女"]] } ), name:"sex", fieldLabel:"性别", anchor:"90%" }, { name:"age", fieldLabel:"年龄", anchor:"90%", vtype:"age", allowBlank:false }, { name:"pwd", inputType:"password", fieldLabel:"密码", allowBlank:false, anchor:"90%" }, { xtype:"datefield", readOnly:true, name:"time", fieldLabel:"注册时间", anchor:"90%", allowBlank:false, format:"Y-m-d" } ] }) this.addEvents("submit"); }, //按钮事件提交方法 submit:function(_params){ if(_params==null) _params={}; if(this.url!=null) this.getForm().submit({url:this.url,params:_params,success:this.onSubmit,waitTitle:"数据传送",waitMsg:"数据传送中...",scope:this}); }, //得到form列表值方法 getValues:function(){ return new Ext.data.Record(this.getForm().getValues()); }, //设置form列表值方法 setValues:function(_rs){ this.getForm().loadRecord(_rs); } , //清空form列表 reset:function(){ this.getForm().reset(); }, //提交事件触发定义 onSubmit:function(_form,_action) { this.fireEvent("submit",this,_action); } }); /**初始化window*******************************************************************************************************/ NewsWindow=Ext.extend(Ext.Window,{ form:null, url:"", //初始化参数 constructor:function(_cfg){ if(_cfg==null) _cfg={}; Ext.apply(this,_cfg); //添加form this.form=new NewsFormPanel({url:this.url}); NewsWindow.superclass.constructor.call(this,{ width:250, height:230, plain:true, modal:true, resizable:false, buttonAlign:"center", items:this.form, bodyStyle:"padding:3px", closeAction:"hide", buttons:[{ text:"确 定", handler:function(){ this.OnSubmit(); }, scope:this },{ text:"取 消", handler:function(){ this.OnExitClick(); }, scope:this }] } ); this.addEvents("submit"); this.form.on("submit",this.OnSubmitClick,this); }, //获取内置form提交事件 OnSubmit:function() { this.form.submit(); }, //触发内置form提交事件 OnSubmitClick:function(_form,_action) { this.fireEvent("submit",this,_action); this.close(); }, //关闭当前window事件 OnExitClick:function() { this.close(); }, //关闭当前window方法 close:function(){ this.form.reset(); this.hide(); } }); /**初始化增加对话window********************************************************************************************/ NewsInsertGridWin=Ext.extend(NewsWindow,{ title:"增加新闻", url:"../dboperition/add.aspx" }); /**初始化修改对话window********************************************************************************************/ NewsUpdateGridWin=Ext.extend(NewsWindow,{ title:"修改新闻", params:"", url:"../dboperition/update.aspx", load:function(_rs) { var srecord=_rs; this.form.setValues(srecord); this.params=_rs.get("id"); }, OnSubmit:function() { this.form.submit({id:this.params}); } }); /**********************************************************************************************/ /**初始化gridpanel***************************************************************************************************/ NewsGridPanel=Ext.extend(Ext.grid.GridPanel,{ //增加window初始化 insertwin:new NewsInsertGridWin(), //修改window初始化 updatewin:new NewsUpdateGridWin(), //数据读取 store:new Ext.data.Store({ url: "NewsData.aspx", reader: new Ext.data.JsonReader({ root:"data", totalProperty:"pagescount" }, [ {name:"id",type:"int"}, {name:"moduleName"}, {name:"channelName"}, {name:"title"}, {name:"releaseTime"}, {name:"releaseMan"}]) }), //初始化参数 constructor:function(){ //参数初始化 NewsGridPanel.superclass.constructor.call(this,{ id:"newspanel", frame:true, anchor:"100%", renderTo:Ext.getBody(), height:300, bodyStyle:'width:100%', iconCls:"icon-grid", loadMask:{msg:"数据载入中...."}, tbar:[{text:"增加", tooltip:"新增", iconCls:"addicon", handler:function(){ this.insertwin.show(); }, scope:this },"-" /*{text:"修改", tooltip:"修改", iconCls:"option", handler:function(){ this.updatewin.show(); try { this.updatewin.load(this.getSelected()); } catch(err){Ext.Msg.alert ( "系统提示",err.description ); this.updatewin.close(); }; }, scope:this },"-", {text:"删除", tooltip:"删除", iconCls:"remove", handler:function(){ try {this.getSelected(); Ext.Msg.confirm("系统提示","你确认删除这条记录吗?",this.onRemove,this); } catch(err){Ext.Msg.alert("系统提示",err.description)}; }, scope:this },"-"*/ ], columns:[ {header:"序号",width:80,dataIndex:"id",sortable:true,align:"center"}, {header:"模块名称",dataIndex:"moduleName",sortable:true,align:"center"}, {header:"频道名称",width:120,dataIndex:"channelName",sortable:true,align:"center"}, {header:"标题",width:200,dataIndex:"title",sortable:true,align:"center"}, {header:"发布时间",width:150,dataIndex:"releaseTime",sortable:true,align:"center"}, {header:"发布人",dataIndex:"releaseMan",sortable:true,align:"center"}, {header:"修改",width:60,dataIndex:"id",renderer:this.UpdateRender,align:"center"}, {header:"删除",width:60,dataIndex:"id",renderer:this.DelRender,align:"center"} ], sm:new Ext.grid.RowSelectionModel({ singleSelect:true }), store:this.store, bbar:new Ext.PagingToolbar({ pageSize:5, store:this.store, displayInfo:true, displayMsg:"当前显示{0}-{1}条记录/共{2}条记录", emptyMsg:"无数据可显示!" }) }); this.store.load({params:{start:0,limit:5}}); this.insertwin.on("submit",this.onInsert,this); this.updatewin.on("submit",this.onUpdate,this); }, //修改按钮呈现 UpdateRender:function(value){ return '<a id="newupdate" href="#)">修改</a>'; } , //删除按钮呈现 DelRender:function(value){ return '<a id="newdel" href="#">删除</a>'; } , //删除记录 del:function(){ try { var _sel=this.getSelected(); Ext.Ajax.request({ url:"../dboperition/del.aspx", params:{id:_sel.get("id")}, success:function(_rs,_op) { var result=Ext.util.JSON.decode(_rs.responseText); if(result.success==false) Ext.Msg.alert("系统信息","删除失败!") } }); this.getStore().remove(_sel); this.getStore().reload(); }catch(err) { Ext.Msg.alert("系统信息","你尚未选择一条记录!") } }, /*getSelected:function(){ if(this.getSelectionModel().getCount()==0) { throw Error("你尚未选择一条记录!") } else return this.getSelectionModel().getSelected(); },*/ //增加事件 onInsert:function(_win,_rs) { this.store.reload();; }, //修改事件 onUpdate:function(_win,_rs) { this.store.reload(); }, //删除事件 onRemove:function(_btn) { if(_btn=="yes") this.del(); } }) |
发表评论
-
浅谈Coolite 方法调用
2009-06-13 08:24 2847今天需要做个复选框删除,碰到了一个小难题,然后我一通乱写,居然 ... -
ExtJS Loading 悬浮层
2009-06-08 11:45 4176<!DOCTYPE html PUBLIC &q ... -
Ext中TreePanel控件和TabPanel控件搭配测试
2009-03-23 08:58 2609在实际的项目中,左边树形菜单,提供各种功能点击,右边一个面板, ... -
ExtJs grid使用详细[转]
2009-03-08 21:36 88992008-11-20 09:09 Ext ... -
ExtJS带验证码登录框[新增回车提交]
2009-03-08 21:29 6984/** 用户带验证码登 ... -
ExtJs2.0学习系列(14)--Ext.TreePanel之第三式(可增删改的树)
2009-03-04 19:28 1416继续tree的learn! 今天就来个可增删改的树吧,操作数 ... -
extjs中 combobox级联
2009-03-04 19:13 7293关键字: extjs, combobox, 级 ... -
ext动态新增一行之二
2009-03-03 10:39 1403ext 动态 新增行 新增一行(2)------------- ... -
ext动态新增一行
2009-03-03 10:37 1520ext 动态 新增行 新增一行(1)------------- ... -
ext表单之高级选项
2009-03-03 10:36 1121ext表单之高级选项--------------------- ... -
ext实现标签式浏览内容
2009-03-03 10:31 1473Ext.onReady(function(){ E ... -
ext异步树加入子节点事件
2009-03-03 10:30 2103extext异步树加入子节点 ... -
实现Ext combox 动态数据加载
2009-03-02 20:37 2428核心代码如下:(注意名称的对应!) 服务器生成的json数据形 ... -
解决TreeNode.reload()失效的办法
2009-03-02 20:36 3832Ext Api文档里面 TreeNode.reload()是没 ... -
Ext2.0的通用grid包括(增、删、改、查、导出excel)
2009-03-02 20:32 2825下面为扩张grid的 代码/** * @a ... -
Ext.Window
2009-02-28 17:19 2082var winUpload = new Ext.Window( ... -
ExtJs中的树分析及实现
2009-02-27 18:12 2258<网上抄录> 首先我们来看日志分类树,这一部分我将 ... -
扩展EXTJS框架的内容检查
2009-02-27 10:36 1033Ext.apply(Ext.form.VTyp ... -
刚写的B/S高级查询界面(基于ExtJs框架)
2009-02-26 10:16 4142这几天赶着做一个B/S系统,基于ExtJs框架,从中学了不少东 ... -
EXT中也有支持快捷键
2009-02-26 10:00 2347EXT中也有支持快捷键,比如回车,ESC等,你可以通过按钮 ...
相关推荐
Efs 是企业快速开发的UI 层。...构造ext对象。开发人员可以不用深入掌握Ext框架,只需要开发者编写少量的 html 代码,也可以做出很炫的页面。当然你也可以使用new Ext 的控件渲染到 页面,两者可以混合使用。
扩展EXT组件 29 文件的创建 30 Let's go 33 完成 35 EXT的布局(Layout) 37 简单的例子 38 加入内容 42 开始使用Grid 51 步骤一 定义数据(Data Definition) 51 步骤二 列模型(Column Model) 52 Grid组件的简易...
9.2.2 重写构造函数 257 9.2.3 继承组件的一些准备 257 9.2.4 常用的辅助函数 258 9.2.5 使用xtype 258 9.3 实现一个功能完整的增、删、查、改表格控件 259 9.3.1 扩展GridPanel 259 9.3.2 配置列模型 259 9.3.3 ...
扩展EXT组件 29 文件的创建 30 Let's go 33 完成 35 EXT的布局(Layout) 37 简单的例子 38 加入内容 42 开始使用Grid 51 步骤一 定义数据(Data Definition) 51 步骤二 列模型(Column Model) 52 Grid组件的简易...
将数据加入到模板中 62 下一步 63 学习利用模板(Templates)的格式...构造器函数 66 方法共享 66 表单组件入门 67 表单体 67 创建表单字段 67 完成表单 68 下一步 69 为一个表单填充或提交...
8.4.1 组件管理及查询:ext.componentmanager与ext.componentquery / 423 8.4.2 焦点管理:ext.focusmanager / 424 8.4.3 z-order管理:ext.zindexmanager与ext.windowmanager / 425 8.4.4 状态管理:ext.state....
Efs 是企业快速开发的UI 层。...构造ext对象。开发人员可以不用深入掌握Ext框架,只需要开发者编写少量的 html 代码,也可以做出很炫的页面。当然你也可以使用new Ext 的控件渲染到 页面,两者可以混合使用。
将数据加入到模板中 62 下一步 63 学习利用模板(Templates)的格式...构造器函数 66 方法共享 66 表单组件入门 67 表单体 67 创建表单字段 67 完成表单 68 下一步 69 为一个表单填充或提交...
4.1.7 Ext.form.field.Checkbox复选框和Ext.form.field.Radio单选框 4.1.8 Ext.form.CheckboxGroup和Ext.form.RadioGroup 4.1.9 Ext.form.field.Trigger触发字段 4.1.10 Ext.form.field.Spinner微调字段 4.1.11 ...
Efs 是企业快速开发的 UI 层。这个 UI 层封装 extjs 框架,Ext 提供了好的 页面布局方式、功能强大的组件...构造ext对象。开发人员可以不用深入掌握Ext框架,只需要开发者编写少量的 html 代码,也可以做出很炫的页面。
也就是预设了部分选项的Vue的实例构造器,它常常服务于Vue.component用来生成组件,可以简单理解为当在模板中遇到该组件作为标签的自定义元素时,会自动调用“扩展实例构造器”来生产组件实例,并挂在到自定义元素上...
功劳归于人们@ 我刚刚修改了构造函数接受存储为标签数组。 用法 只需将以下内容添加到您的构造函数树中: { xtype : 'tagcloud' , store : [ 'education' , 'financial' , 'computer' , 'application' , 'online...
前段时间自己做的vue练手项目,需要一个通用的消息提示组件,但是消息提示这种组件我更想用方法来调用,而不是在各个页面上都添加个组件(那样感觉很麻烦,重度懒癌患者),于是就上网差查了查,并研究了ElementUI的...
三、函数 getCmp(string _id):得到id为_id的组件对象。 getValue():得到文件框值。 四、其它 layout:只在在此布局下才能正确显示文件框的标签名,布局的宿主对象必面 是Ext.Container或者Ext.Container的子类。 ...
本文通过Vue.extend创建组件构造器的方法写弹窗组件,供大家参考,具体内容如下 alert.js文件代码 import Vue from 'vue' // 创建组件构造器 const alertHonor = Vue.extend(require('./alert.vue')); var ...
使用 sencha generate 命令帮你你快速的创建一个mvc的组件包像controllers和models 执行以下命令sencha help generate你可以看到有如下的扩展信息: 重要:为了执行命令,你需要在当前应用程序的路径下执行才可以。...
如果大家只顾开发,对基础知识不了解,在今后的解决问题过程中,也是个大问题,今天小编抽空对基础概念给大家屡一下,用于大家日后学习。 Vue.extend({})简述:使用vue.extend返回... 2,实例化构造函数从而模拟组件:
1.代码生成工具:代码生成工具生成整个应用程序并且扩展生成mvc的组件框架,如,使用sencha generate app 命令,可以自动帮你生成一个完成的应用程序目录框架。 2.JS编译:框架意识,Javascript 编译器了解Sencha的...
TextField 顾名思义文本输入框,类似于iOS中的UITextField和Android...TextField的构造方法: const TextField({ Key key, this.controller, //控制器,控制TextField文字 this.focusNode, this.decoration: const
Vue.extend 的作用,就是基于 Vue 构造器,创建一个‘ 子类 ‘,它的参数跟new Vue的基本一样,但data要跟组件一样,是个函数,再配合$mount,就可以渲染组件,并且挂载到任意指定的节点上,比如body(这是单文件...