`
hackbomb
  • 浏览: 216700 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ext.grid.EditorGridPanel向后台传送数据

    博客分类:
  • Ext
阅读更多

html 页面

<html>
  <head>
    <title>测试数据</title>
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <link rel="stylesheet" type="text/css" href="../../share/ext2.0.2/resources/css/ext-all.css"/>
    <script type="text/javascript" src="../../share/ext2.0.2/adapter/yui/yui-utilities.js"></script>
    <script type="text/javascript" src="../../share/ext2.0.2/adapter/yui/ext-yui-adapter.js"></script>
    <script type="text/javascript" src="../../share/ext2.0.2/ext-all-debug.js"></script>
  </head>

  <body class="body" oncontextmenu="self.event.returnValue=false" scroll="no">
   
      <table width="100%" border="0" valign=top>
        <tr>
          <td width="70%">&nbsp;</td>
          <td><div id="bt_GetCard"></div></td>
          <td><div id="bt_Save"></div></td>
          <td><div id="bt_Cancel"></div></td>
        </tr>
      </table>
<table width="500" border="0" align="center">
<tr><td><div id="test_grid"></div></td></tr>
</table>
</body>

<script type="text/javascript">

Ext.grid.dummyData = [
    {Ids: 1, description: '', rate: 0},
    {Ids: 2, description: '', rate: 0},
    {Ids: 3, description: '', rate: 0},
    {Ids: 4, description: '', rate: 0},
    {Ids: 5, description: '', rate: 0}
];

Ext.onReady(function(){

Ext.QuickTips.init();

    var xg = Ext.grid;

    var reader = new Ext.data.JsonReader({
        fields: [
            {name: 'Ids', type: 'int'},
            {name: 'description', type: 'string'},
            {name: 'rate', type: 'float'}
        ]

    });

    var dataset = new Ext.data.Store({
        reader: reader,
        data: xg.dummyData
    });

    var grid = new xg.EditorGridPanel({

        ds: dataset,
        columns: [
            {
                header: '序  号',
                width: 50,
                dataIndex: 'Ids'
            },{
                header: "描  述",
                width: 300,
                dataIndex: 'description',
                hideable: false,
                editor: new Ext.form.TextField({
                   allowBlank: false
                })
            },{
                header: "收费金额",
                width: 100,
                //sortable: true,
                renderer: Ext.util.Format.usMoney,
                dataIndex: 'rate',
                editor: new Ext.form.NumberField({
                    allowBlank: false,
                    allowNegative: false,
                    style: 'text-align:left'
                })
            }
        ],

        frame: false,
        align: 'center',
        width: 500,
        height: 250,
        clicksToEdit: 1,
        collapsible: false,
        animCollapse: false,
        trackMouseOver: false,
        iconCls: 'icon-grid',
        renderTo: 'test_grid'
    });

    var bt_Save = new Ext.Button({
        text: '&nbsp;保&nbsp;&nbsp;存&nbsp;'
    });
    bt_Save.render('bt_Save');
    bt_Save.on('click', function(){
        var m = dataset.getModifiedRecords();
        if (m.length == 0){
            alert("没有数据");
            return false;
        }
        var sSend = "["
        for (var i = 0, len = m.length; i < len; i++){
            sSend = sSend + "{Memo:'" + m[i].data['description'] + "', Mey:'" + m[i].data['rate'] + "'}";
            if (i < len - 1)
                sSend = sSend + ","
        } 
        sSend = sSend + "]";
       
        sSend = Ext.util.JSON.encode(sSend);
       
        Ext.Ajax.request({
            url: 'bxConsume_do.jsp',
            method: 'POST',
            success: function (result, request){
                alert('成功' + result.responseText);
            },
            failure: function (result, request){
                alert('失败' + result.responseText);
            },
            params: {data: sSend}
        });
    });
});
</script>
</html>

bxConsume_do.jsp 页面如下:

<%@ page language="java" pageEncoding="UTF-8"%>
<%@ page import="net.sf.json.*" %>
<%
    String S = "";
    int iCount = 0;
    JSONObject jsonObj;
    JSONArray jsonArr;
   
    S = request.getParameter("data");
    if (request.getParameter("data") == null){
        out.print("参数错误 1!");
        return;
    };
    S = java.net.URLDecoder.decode(S, "UTF-8");
    S = S.substring(1, S.length() - 1);

    jsonArr = JSONArray.fromObject(S);   
   
    for (int i = 0; i < jsonArr.size(); i++){
        jsonObj = jsonArr.getJSONObject(i);
        JSONObject.toBean(jsonObj);
       
        if (jsonObj.getString("Memo").trim() != "" &&
            jsonObj.getDouble("Mey") > 0)
            iCount = iCount + 1;
        System.out.println( jsonObj.getString("Memo").trim() );
        System.out.println( jsonObj.getDouble("Mey") );
    }

%>

分享到:
评论

相关推荐

    可编辑表格Ext.grid.EditorGridPanel

    Ext.grid.EditorGridPanel是Ext JS库中的一个组件,主要用于创建具有可编辑单元格的表格。这个组件在数据展示和编辑方面提供了丰富的功能,是构建数据密集型应用的理想选择。下面将详细阐述其特点、工作原理及如何...

    EXT核心API详解

    73、Ext.grid.EditorGridPanel类 ……… 62 74、Ext.grid.PropertyGrid类 …………… 65 1、Ext类 addBehaviors(Object obj) : void 对选择的元素 应用事件侦听器,事件名以@附加在结尾,例如 addBehaviors({ ...

    Ext组件描述,各个组件含义

    **2.5 Editor Grid Panel (Ext.grid.EditorGridPanel)** - **xtype**: `editorgrid` - **功能描述**:Editor Grid Panel 是一个支持行级编辑的网格面板。 - **主要用途**:适合于需要对表格中的数据进行编辑的场景...

    ExtJS入门教程(超级详细)

    1、Ext类 ………………………………… 2 2、Array类 …………………………… 4 3、Number类 …………………………… 4 4、...73、Ext.grid.EditorGridPanel类 ……… 62 74、Ext.grid.PropertyGrid类 …………… 65

    Ext.grid.GridPanel右键菜单

    右键菜单的资料,代码已经详细描写。请仿照文件中所描述即可使用,不限于EXT4.0以上版本使用。

    ext 读取xml 可编辑grid

    在EXT JS框架中,"ext 读取xml 可编辑grid"是一个常见的需求,涉及到的主要知识点包括EXT的数据对象、EditorGridPanel的使用以及EXT对XML数据格式的支持。下面将详细阐述这些内容。 EXT JS是一个强大的JavaScript库...

    给Extjs的GridPanel增加“合计”行

    - 首先,我们需要创建一个继承自EXTJS的`Ext.grid.GridView`的自定义View类。这个类将覆盖默认的渲染逻辑,以便在表格底部插入合计行。 - 在`GridSummary.js`文件中,我们可以定义这个类,并重写`onRender`方法,...

    Ext grid合并单元格

    var grid = new Ext.grid.EditorGridPanel({ renderTo: "hello", title: "学生基本信息管理", height: 200, width: 600, cm: colM, store: store, viewConfig: viewConfig }); ``` ### 四、总结 通过上述...

    Ext可编辑的tree,EditorGridPanel

    因为项目的需求,实现一个可以编辑的tree,在网上找了一个牛人写的控件.Ext.ux.maximgb.tg.EditorGridPanel 把源码下载下来以后 不能运行,自己根据给出的列子,另写了一个小程序.不过并没有与数据库交互.

    EXT2.0 GRID 示例

    3. **行编辑**:EXT GRID支持行内编辑,用户可以直接在表格中修改数据,这需要结合EditorGridPanel和Form Field组件来实现。 4. **排序和过滤**:GRID可以实现列点击排序,通过配置`sortable`属性和`sortInfo`对象...

    Ext3.0 api帮助文档

    - **Ext.grid.EditorGridPanel**: 提供单元格级别的编辑功能。 6. **表单(Forms)** - **Ext.form.FormPanel**: 创建表单的容器,支持多种表单元素和验证。 - **Ext.form.Field**: 表单字段类,如文本框、选择...

    Ext TreePanel

    在Ext JS中,TreePanel是基于Ext.grid.Panel扩展的,它包含了树形数据的渲染和操作功能。TreePanel可以与Ext.data.TreeStore配合使用,TreeStore负责加载和管理树形数据。TreePanel中的每个节点通常表示为一个条目,...

    老师整理的extjs学习笔记

    `Ext.grid.EditorGridPanel` 是一个扩展了 `Ext.grid.GridPanel` 的组件,允许直接在表格中编辑数据。它结合了表格视图和表单编辑功能,使得数据编辑变得更加直观。 #### 九、Ext.tree.TreePanel -- 树的使用 **...

    ext教程1.pdf

    - **表单及元素组件**:`Ext.Editor`(编辑器)、`Ext.grid.EditorGridPanel`(可编辑的表格)等。 EXTJS 的强大之处在于它提供了丰富的组件库和灵活的布局机制,使得开发者可以轻松构建复杂的应用程序界面,同时...

    extjs xtype

    10. `editorgrid` - `Ext.grid.EditorGridPanel`:可编辑的表格,允许用户直接在表格中修改数据。 11. `grid` - `Ext.grid.GridPanel`:标准的表格组件,用于展示数据。 12. `paging` - `Ext.PagingToolbar`:分页...

    ExtJs组件类的对应表

    11. **`editorgrid`** - `Ext.grid.EditorGridPanel`,可编辑的表格组件,允许用户直接在表格中编辑数据。 12. **`propertygrid`** - `Ext.grid.PropertyGrid`,属性表格组件,用于展示对象的属性。 13. **`...

    ExtJS3总结内容

    - `editorgrid`: `Ext.grid.EditorGridPanel` - `flash`: `Ext.FlashComponent` - `grid`: `Ext.grid.GridPanel` - `listview`: `Ext.ListView` - `panel`: `Ext.Panel` - `progress`: `Ext.ProgressBar` - `...

    extJs xtype 类型

    11. **`editorgrid`:** 可编辑的表格组件,允许用户直接在表格中编辑数据,通过`Ext.grid.EditorGridPanel`类实现。 12. **`propertygrid`:** 属性表格组件,用于展示对象的属性列表,通过`Ext.grid.PropertyGrid`...

    ext3 gridRowEditor本地数据简单demo,有注释

    开发者可能会使用`Ext.grid.EditorGridPanel`,并为每个列定义一个`editor`属性来启用单元格编辑。同时,Store的配置可能包括数据源(即"data"),以及定义字段的`fields`属性。 在深入理解这个demo的过程中,你...

Global site tag (gtag.js) - Google Analytics