`
2010_315
  • 浏览: 11143 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

EXT STRUTS2

    博客分类:
  • AJAX
阅读更多
由于项目的原因 最近在学习EXT 公司给买了本大BOOK 看了大半天

弄了个JSON+STRUTS2+EXT 动态GIRD的例子
<!--JSP-->
<%@ page language="java" import="java.util.*,com.opensymphony.xwork2.util.*" pageEncoding="utf-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>struts2-ext</title>
<link href="<%=request.getContextPath()%>/Ext/resources/css/ext-all.css" rel="stylesheet" type="text/css" />
    <script type='text/javascript' src='<%=request.getContextPath()%>/Ext/ext-base-debug.js'></script>
    <script type='text/javascript' src='<%=request.getContextPath()%>/Ext/ext-all-debug.js'></script>
  </head>
  <script type="text/javascript">
Ext.onReady(function(){

    var cm = new Ext.grid.ColumnModel([
        {header:'编号',dataIndex:'id',editor:new Ext.grid.GridEditor(new Ext.form.TextField({
            allowBlank: false
        }))},
        {header:'名称',dataIndex:'name',editor:new Ext.grid.GridEditor(new Ext.form.TextField({
            allowBlank: false
        }))},
        {header:'描述',dataIndex:'descn',editor:new Ext.grid.GridEditor(new Ext.form.TextField({
            allowBlank: false
        }))}
    ]);

    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'}
        ]),
pruneModifiedRecords: true
    });

    var Record = Ext.data.Record.create([
        {name: 'id', type: 'string'},
        {name: 'name', type: 'string'},
        {name: 'descn', type: 'string'}
    ]);

    var grid = new Ext.grid.EditorGridPanel({
        el: 'grid',
        ds: ds,
        cm: cm,
        width: 400,  
        height: 600,
        tbar: new Ext.Toolbar(['-', {
            text: '添加一行',
            handler: function(){

                var initValue = {id:'',name:'',descn:''};

                var p = new Record(initValue);

                grid.stopEditing();
                ds.insert(0, p);
                grid.startEditing(0, 0);

                p.dirty = true;
                p.modified = initValue;
                if(ds.modified.indexOf(p) == -1){
                    ds.modified.push(p);
                }
            }
        }, '-', {
            text: '删除一行',
            handler: function(){
                Ext.Msg.confirm('信息', '确定要删除?', function(btn){
                    if (btn == 'yes') {
                        var sm = grid.getSelectionModel();
                        var cell = sm.getSelectedCell();

                        var record = ds.getAt(cell[0]);
                        ds.remove(record);
                    }
                });
            }
        }, '-', {
            text: '保存',
            handler: function(){
                var m = ds.modified.slice(0);
                var jsonArray = [];
                Ext.each(m, function(item) {
                    jsonArray.push(item.data);
                });

                Ext.lib.Ajax.request(
                    'POST',
                    'grid2.jsp',
                    {success: function(response){
                        Ext.Msg.alert('信息', response.responseText, function(){
                            ds.reload();
                        });
                    },failure: function(){
                        Ext.Msg.alert("错误", "与后台联系的时候出现了问题");
                    }},
                    'data=' + encodeURIComponent(Ext.encode(jsonArray))
                );
            }
        }, '-'])
    });
    grid.render();

    ds.load();
});
  </script>
  <body>
  <div id="grid" style="height:300px;"></div>
  </body>
</html>
<!--接受数据的时候可以是JSP也可以是STRUTS2的ACTION累-->
<%@ page contentType="text/html;charset=utf-8"%>
<%
    request.setCharacterEncoding("UTF-8");
    response.setCharacterEncoding("UTF-8");

    String data = request.getParameter("data");
    System.out.println(data);

    response.getWriter().print(data);
%>
分享到:
评论

相关推荐

    ext struts2 swfupload 跨域文件上传

    "ext struts2 swfupload 跨域文件上传"这个主题涉及到三个关键技术和概念:EXTJS(Ext JS)、Struts2以及SwfUpload,它们共同解决了Web应用中的跨域文件上传问题。 EXTJS是一种强大的JavaScript库,用于构建富...

    GWT+EXT+STRUTS2+Eclipse完整范例.rar

    标题 "GWT+EXT+STRUTS2+Eclipse完整范例.rar" 提示我们这是一个包含一个集成开发环境Eclipse的项目,该项目集成了Google Web Toolkit (GWT), EXT JS 和Struts2框架。描述 "整合 GWT EXT STRUTS2 Eclipse 范例" 明确...

    ext+struts2的学生信息管理系统

    《EXT+STRUTS2构建的学生信息管理系统详解》 在当今信息化社会,高效的数据管理和信息处理是各类组织不可或缺的能力。本文将深入探讨基于EXT和STRUTS2技术框架构建的学生信息管理系统,阐述其核心功能、架构设计...

    ext整合struts2

    Struts2和EXTJS是两种在Web开发中广泛使用的开源技术。Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,它极大地简化了Java Web应用程序的开发过程。EXTJS则是一个JavaScript库,用于构建富...

    struts2+ext实例

    struts2+ext实例struts2+ext实例struts2+ext实例struts2+ext实例struts2+ext实例struts2+ext实例struts2+ext实例struts2+ext实例struts2+ext实例

    struts与ext集成

    Struts2和EXT的集成是Java Web开发中的一个重要主题,特别是在构建用户界面时追求美观、交互性强的应用。这篇教程将深入探讨如何将这两者结合,为开发者提供一个更高效的开发环境。 **Struts2框架** Struts2是...

    Ext和struts2实例

    Ext 和 Struts2 是两种非常重要的 Java Web 开发框架,它们在构建企业级应用程序时起着关键作用。本文将深入探讨这两个框架的结合使用,并解决可能出现的 jar 包冲突问题。 首先,Ext(Ext JS)是一款强大的 ...

    Struts2+Ext登录整合完整版

    Struts2+Ext登录整合完整版 Struts2+Ext登录整合完整版 Struts2+Ext登录整合完整版 Struts2+Ext登录整合完整版 Struts2+Ext登录整合完整版 Struts2+Ext登录整合完整版 Struts2+Ext登录整合完整版 Struts2+Ext登录...

    Ext+Struts2的学生成绩管理系统

    《基于Ext+Struts2的学生成绩管理系统详解》 在现代信息技术的推动下,教育领域的信息化管理已经成为不可或缺的一部分。学生成绩管理系统的构建,旨在提高教学管理效率,减轻教师的工作负担,为教学决策提供数据...

    Ext_struts2

    Ext_struts2是一个结合了Ext JS前端框架与Struts2后端MVC框架的整合应用,旨在提升Web应用的用户体验和开发效率。Struts2是一个强大的、基于Java的开源MVC框架,它提供了模型-视图-控制器模式的实现,以帮助开发者...

    搭建EXTJS和STRUTS2框架(ext和struts2简单实例)

    ### 搭建EXTJS和STRUTS2框架(ext和struts2简单实例) #### 一、概述 本文档将详细介绍如何在Java Web项目中搭建EXTJS和STRUTS2框架,并通过一个简单的实例来展示如何使这两个技术协同工作。EXTJS是一个用于构建交互...

    ext+struts2

    "EXT+Struts2"是一个常见的技术组合,用于构建企业级的Web应用程序,特别是涉及到文件上传功能时。EXT是一个强大的JavaScript库,它提供了丰富的用户界面组件和交互效果,而Struts2是Java EE平台上的一个MVC框架,...

    EXT+STRUTS2 经典例子

    EXT 和 Struts2 是两种广泛使用的 Java Web 开发框架,它们在构建动态、交互式的用户界面和处理服务器端业务逻辑方面都有出色的表现。EXT 主要是前端的 JavaScript 框架,提供丰富的组件库和强大的数据绑定功能,而 ...

    SSI+EXT (Struts2+Spring+Ibatis+Ext)

    **SSI+EXT(Struts2+Spring+Ibatis+Ext)**是一个常见的Java Web开发框架组合,用于构建高效、可扩展的企业级应用。这个框架集合了Struts2作为MVC框架,Spring作为依赖注入和事务管理工具,Ibatis作为持久层解决方案...

    struts2与Ext4.0的json交互

    这篇博客文章“Struts2与Ext4.0的json交互”可能会探讨如何在Struts2中配置和使用JSON来与前端的Ext4.0框架进行通信。 首先,我们来看Struts2中的JSON插件。这个插件允许我们在Action类中直接返回JSON对象,无需...

    ext + struts2 例子

    在IT行业中,EXT和Struts2是两个非常重要的框架,它们分别用于构建用户界面和处理后端业务逻辑。本文将详细介绍EXT与Struts2的结合使用,并通过标题和描述中的关键词,如“树”、“gridpanel”、“分页”、“文件...

    Ext+struts2项目

    在这个"Ext+struts2项目"中,我们可以看到这两个技术的集成应用。 首先,Struts2是Apache软件基金会的一个开源MVC框架,它基于Model-View-Controller(模型-视图-控制器)架构模式,为Java EE平台提供了强大的控制...

    Ext+Struts2多文件上传

    3. **Struts2配置**:在Struts2的配置文件(struts.xml)中,定义一个Action类,该类将处理文件上传请求。Action类需要继承`org.apache.struts2.upload.FormFile`接口,以便接收和处理上传的文件。 4. **Action处理...

    Ext+struts2+spring+hibernate做的一个CRUD实例

    用EXT+struts2+spring+hibernate做的一个增删改查实例,主要用到了EXTjs里面的部分组件,用JSON与服务端交互,实现一个增删改查的功能!本地MYsql数据库,sql文件在根目录下面,建好库既可以运行!当然,还是需要在...

    Struts2+spring2.5+EXT+json实例

    Struts2、Spring2.5、EXT和JSON是四个在Web开发中至关重要的技术,它们共同构建了高效、灵活和可扩展的Web应用程序。这里,我们深入探讨这四个技术及其在实际项目中的应用。 首先,Struts2是一个基于MVC(Model-...

Global site tag (gtag.js) - Google Analytics