`
qinya06
  • 浏览: 604629 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

extjs example

阅读更多
student.js

Ext.onReady(function() {

    Ext.QuickTips.init();

    var sexRenderer = function(value) {
        if (value == 1) {
            return '<span style="color:red;font-weight:bold;">男</span>';
        } else if (value == 2) {
            return '<span style="color:green;font-weight:bold;">女</span>';
        }
    };

    var StudentRecord = Ext.data.Record.create([
        {name: 'id', type: 'int'},
        {name: 'code', type: 'string'},
        {name: 'name', type: 'string'},
        {name: 'sex', type: 'int'},
        {name: 'age', type: 'int'},
        {name: 'political', type: 'string'},
        {name: 'origin', type: 'string'},
        {name: 'professional', type: 'string'}
    ]);

    var store = new Ext.data.Store({
        proxy: new Ext.data.HttpProxy({url: './jsp/list.jsp'}),
        reader: new Ext.data.JsonReader({
            totalProperty: 'totalCount',
            root: 'result'
        },StudentRecord),
        remoteSort: true
    });
    store.load({params:{start:0,limit:15}});

    var columns = new Ext.grid.ColumnModel([
        {header: '学号', dataIndex: 'code'},
        {header: '姓名', dataIndex: 'name'},
        {header: '性别', dataIndex: 'sex', renderer: sexRenderer},
        {header: '年龄', dataIndex: 'age'},
        {header: '政治面貌', dataIndex: 'political'},
        {header: '籍贯', dataIndex: 'origin'},
        {header: '所属系', dataIndex: 'professional'}
    ]);
    columns.defaultSortable = true;

    // grid start
    var grid = new Ext.grid.GridPanel({
        title: '学生信息列表',
        region: 'center',
        loadMask: true,
        store: store,
        cm: columns,
        sm: new Ext.grid.RowSelectionModel({singleSelect:true}),
        viewConfig: {
            forceFit: true
        },
        bbar: new Ext.PagingToolbar({
            pageSize: 15,
            store: store,
            displayInfo: true
        })
    });
    // grid end

    // form start
    var form = new Ext.form.FormPanel({
        title: '编辑学生信息',
        region: 'east',
        frame: true,
        width: 300,
        autoHeight: true,
        labelAlign: 'right',
        labelWidth: 60,
        defaultType: 'textfield',
        defaults: {
            width: 200,
            allowBlank: false
        },
        items: [{
            xtype: 'hidden',
            name: 'id'
        },{
            fieldLabel: '学号',
            name: 'code'
        },{
            fieldLabel: '姓名',
            name: 'name'
        },{
        	 
        	 //xtype: 'hidden',
            fieldLabel: '年龄',
            name: 'age',
            xtype: 'numberfield',
            allowNegative: false
        },{
            fieldLabel: '性别',
            name: 'sexText',
            hiddenName: 'sex',
            xtype: 'combo',
            store: new Ext.data.SimpleStore({
                fields: ['value','text'],
                data: [['1','男'],['2','女']]
            }),
            emptyText: '请选择',
            mode: 'local',
            triggerAction: 'all',
            valueField: 'value',
            displayField: 'text',
            readOnly: true
        },{
            fieldLabel: '政治面貌',
            name: 'political',
            xtype: 'combo',
            store: new Ext.data.SimpleStore({
                fields: ['text'],
                data: [['群众'],['党员'],['团员']]
            }),
            emptyText: '请选择',
            mode: 'local',
            triggerAction: 'all',
            valueField: 'text',
            displayField: 'text',
            readOnly: true
        },{
            fieldLabel: '籍贯',
            name: 'origin'
        },{
            fieldLabel: '所属系',
            name: 'professional'
        }],
        buttons: [{
            text: '添加',
            handler: function() {
                if (!form.getForm().isValid()) {
                    return;
                }
                if (form.getForm().findField("id").getValue() == "") {
                    // 添加
                    form.getForm().submit({
                        url: './jsp/save.jsp',
                        success: function(f, action) {
                            if (action.result.success) {
                                Ext.Msg.alert('消息', action.result.msg, function() {
                                    grid.getStore().reload();
                                    form.getForm().reset();
                                    form.buttons[0].setText('添加');
                                });
                            }
                        },
                        failure: function() {
                            Ext.Msg.alert('错误', "添加失败");
                        }
                    });
                } else {
                    // 修改
                    form.getForm().submit({
                        url: './jsp/save.jsp',
                        success: function(f, action) {
                            if (action.result.success) {
                                Ext.Msg.alert('消息', action.result.msg, function() {
                                    grid.getStore().reload();
                                    form.getForm().reset();
                                    form.buttons[0].setText('添加');
                                });
                            }
                        },
                        failure: function() {
                            Ext.Msg.alert('错误', "修改失败");
                        }
                    });
                }
            }
        },{
            text: '清空',
            handler: function() {
                form.getForm().reset();
                form.buttons[0].setText('添加');
            }
        },{
            text: '删除',
            handler: function() {
                var id = form.getForm().findField('id').getValue();
                if (id == '') {
                    Ext.Msg.alert('提示', '请选择需要删除的信息。');
                } else {
                    Ext.Ajax.request({
                        url: './jsp/remove.jsp',
                        success: function(response) {
                            var json = Ext.decode(response.responseText);
                            if (json.success) {
                                Ext.Msg.alert('消息', json.msg, function() {
                                    grid.getStore().reload();
                                    form.getForm().reset();
                                    form.buttons[0].setText('添加');
                                });
                            }
                        },
                        failure: function() {
                            Ext.Msg.alert('错误', "删除失败");
                        },
                        params: "id=" + id
                    });
                }
            }
        }]
    });
    // form end

    // 单击修改信息 start
    grid.on('rowclick', function(grid, rowIndex, event) {
        var record = grid.getStore().getAt(rowIndex);
        form.getForm().loadRecord(record);
        form.buttons[0].setText('修改');
    });
    // 单击修改信息 end

    // layout start
    var viewport = new Ext.Viewport({
        layout: 'border',
        items: [{
            region: 'north',
            contentEl: 'head'
        }, grid, form, {
            region: 'south',
            contentEl: 'foot'
        }]
    });
    // layout end
});

0
0
分享到:
评论

相关推荐

    example extjsexample extjs

    example extjsexample extjsexample extjsexample extjsexample extjsexample extjsexample extjsexample extjsexample extjs

    ext--example_code.zip_ext java_extjs_extjs example

    extjs的一些经典的例子,可作为工程或项目的前台参考。

    extjs-example

    extjs的example,有些无法通过index打开,需要自行寻找子页面

    EXTJS 5.1 Examples

    ### EXTJS 5.1 Examples知识点详解 #### 一、EXTJS 5.1 Examples简介 EXTJS 5.1 Examples是一系列针对EXTJS 5.1版本的示例集合,旨在帮助开发者快速上手并深入理解EXTJS框架的各种功能与应用场景。这些示例涵盖了...

    extJs示例代码 官方版本

    extJs示例代码 官方版本 ext-4.1.0-beta-3.rar

    jquery extjs example

    **jQuery与ExtJS示例详解** 在Web开发领域,jQuery和ExtJS是两种非常流行的JavaScript库,它们分别提供了丰富的功能和强大的用户界面组件。这里我们深入探讨这两个库以及它们的结合使用。 **jQuery:轻量级的选择...

    extjs 4.2.1 examples 官方例子

    http://docs.sencha.com/extjs/4.2.1/ 参考这个 ,与这个一样

    ExtJS实用开发指南

    &lt;title&gt;ExtJS Example &lt;script src="js/extjs/ext-all.js"&gt; &lt;!-- Your content here --&gt; ``` #### 四、ExtJS组件体系结构及使用 ExtJS的组件体系结构是其核心之一,了解这部分内容对于掌握ExtJS至关重要。 ...

    PHP+extjs开发的人员管理系统

    这是一个使用PHP+extjs开发的人员管理系统,能够方便管理班级的人员等功能,界面美观,使用方便,是学习extjs学者的参考例子-This... beautiful interface, easy to use reference for scholars to learn extjs example

    extJs3.0学习资料以及官方实例

    extJs3.0学习资料以及官方实例 extJs3.0学习资料以及官方实例 extJs3.0学习资料以及官方实例

    ExtJS6MinMvcExample

    ExtJS 是一个强大的JavaScript框架,主要用于构建富客户端的Web应用程序。这个"ExtJS6MinMvcExample"是一个基于ExtJS 6的最小化MVC(Model-View-Controller)示例项目,展示了如何在ExtJS 6环境中搭建和组织一个基本...

    extjs3.0例子

    EXTJS 3.0 是一个历史悠久的JavaScript框架,主要用于构建富客户端Web应用程序。EXTJS以其强大的组件库、优雅的API和丰富的用户界面控件而闻名。在这个“extjs3.0例子”中,我们将深入探讨EXTJS的核心概念、常用对象...

    ExtJs_Viewport_Example

    "ExtJS_Viewport_Example"是关于如何在ExtJS应用中使用Viewport的概念和实践示例。 Viewport 是ExtJS中的一个重要概念,它是一个特殊的容器,全屏占据浏览器窗口的可见部分,用来展示应用的主要内容。当你想要确保...

    extjs5.1.3 离线帮助文档

    EXTJS 5.1.3 离线帮助文档是一个重要的资源,对于开发者来说,它提供了全面的EXTJS框架的详细信息,使用户能够在没有网络连接的情况下查阅和学习EXTJS库的功能和用法。EXTJS是一款强大的JavaScript UI库,特别适用于...

    Extjs6示例中文版

    由于中文学习资源较少,作者决定翻译一本名为《ExtJS6 By Example》的英文书籍,并在此基础上加入自己的理解和见解,以帮助更多开发者更好地理解和掌握ExtJS6。 #### 2. 为什么选择ExtJS - **跨浏览器支持**:使用...

    Ext JS6 by Example中文版(含源码).rar

    这个"Ext JS6 by Example中文版(含源码)"的资源,显然是一份关于如何使用Ext JS 6的中文教程,结合实例来帮助初学者快速上手。下面将详细探讨Ext JS 6的核心特性、重要组件以及开发实践。 1. **核心特性**: - **...

    ExtJs官方网站中文的入门指南 javascript

    url: 'example.php', success: function(response) { console.log('Success: ', response.responseText); }, failure: function(response) { console.error('Failed: ', response.status, response.statusText...

    开发extjs程序可查看页面源代码

    ExtJS是一种基于JavaScript的前端框架,用于构建富客户端应用程序。它提供了一套完整的组件模型、数据绑定机制以及强大的布局管理,使得开发者能够构建出复杂的、交互丰富的Web应用。然而,在ExtJS开发过程中,由于...

    [pdf]Ext JS 6 By Example

    一本国外牛人写的关于 ExtJS 6 的电子书 [Ext JS 6 By Example]。这份资料在 PACKT上卖 35.99 刀的,讲的很详细,例子也比较简单,容易理解,现我准备利用工作之余翻译这份文档,为自己学习加深理解,也希望能帮助更...

Global site tag (gtag.js) - Google Analytics