博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ExtJS grid简单应用之 展示JSON数据
阅读量:5993 次
发布时间:2019-06-20

本文共 2483 字,大约阅读时间需要 8 分钟。

 Grid功能:  展示json数据,编辑行,排序,分页.分页功能要根据请求URL的参数,在服务器端返回相应JSON,此处服务端未写.(url参数,可通过firebug控制台查看)

 1,首先引用

<script src="ext-4.0.0/ext-all.js" type="text/javascript"></script>   //ExtJS文件

   <link href="ext-4.0.0/resources/css/ext-all.css" rel="stylesheet" type="text/css" />  //ExtJS样式文件

 

2.前端代码:

Ext.onReady(function () {

           var itemsPerPage = 2;

           //定义model
           Ext.define('User', {
               extend: 'Ext.data.Model',
               // fields定义字段和数据类型
               fields: [
                         { name: 'id', type: 'int' },
                         { name: 'name', type: 'string' },
                         { name: 'date', type: 'datetime' }
                       ]
           });

           //定义数据集

           var store = Ext.create('Ext.data.Store', {

               model: 'User',

               autoLoad: true,

               pageSize: itemsPerPage,  //分页数据条数

               //使用ajax代理

               proxy: {
                   type: 'ajax',
                   url: 'Handler.ashx', //获取json地址
                   //Reader 解码json数据
                   reader: {
                       type: 'json',
                       root: 'users',
                       total: 'total'

                   }

               }

           })

           Ext.create('Ext.grid.Panel', {

               renderTo: Ext.getBody(), //页面显示

               store: store,        //设置数据源
               width: 400,
               height: 300,
               title: 'asdasd',   //标题

               //定义列名

               columns: [
               {
                   text: 'id', width: 100, sortable: true, dataIndex: 'id' /*绑定字段*/, editor: 'textfield' /*定义编辑是显示的空间类型*/

               },

               {
                   text: '姓名', width: 120, dataIndex: 'name', editor: 'textfield'
               },
               {
                   text: '日期', width: 120, dataIndex: 'date', editor: 'datefield'

               }

               ],

               //单元格编辑

               /*

               selType: 'cellmodel',
               plugins: [
               Ext.create('Ext.grid.plugin.CellEditing', {
               clicksToEdit: 1
               })
               ],
               */

               //行编辑编辑

               selType: 'rowmodel',
               plugins: [
                            Ext.create('Ext.grid.plugin.RowEditing', {
                                clicksToEdit: 1
                            })
                        ],

               //分页

               dockedItems: [{
                   xtype: 'pagingtoolbar',
                   store: store,   // same store GridPanel is using
                   dock: 'bottom',
                   displayInfo: true
               }]

           })

 

 

 

       })

 

3,服务器端代码:

public class Handler : IHttpHandler

{

    public void ProcessRequest(HttpContext context)

    {
        context.Response.ContentType = "text/plain";

        User user = new User(1, "马来西亚", DateTime.Now);
        User u = new User(2, "意大利", DateTime.Parse("02/03/2012"));
        List<User> l = new List<User>();
        l.Add(user);
        l.Add(u);

 

        JavaScriptSerializer jss = new JavaScriptSerializer();

        string users = "{  success: true, users:  " + jss.Serialize(l) + " }";

    
        context.Response.Write(users);

 

    }

  

    public bool IsReusable

    {
        get
        {
            return false;
        }
    }

}

public class User

{
    public User() { }
    public User(int id, string name, DateTime date) { Id = id; Name = name; Date = date; }
    private int Id;

    public int id

    {
        get { return Id; }
        set { Id = value; }
    }
    private string Name;

    public string name

    {
        get { return Name; }
        set { Name = value; }
    }

    private DateTime Date;

    public DateTime date

    {
        get { return Date; }
        set { Date = value; }
    }

}

转载于:https://www.cnblogs.com/Mr-Joe/archive/2012/02/21/2361010.html

你可能感兴趣的文章
LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
查看>>
HDU 5353 Average
查看>>
神经网络入门游戏推荐BugBrain
查看>>
【webpack】webpack-dev-server生猛上手——让我们来搭一个webpack的微服务器吧!
查看>>
王立平--TF卡
查看>>
HTML5中x-webkit-speech语音输入功能
查看>>
按键驱动程序(异步通知)
查看>>
Linux 文件系统初步
查看>>
hdu 4521 小明系列问题——小明序列(线段树+DP或扩展成经典的LIS)
查看>>
阻尼滑动--能够滑动过度的ScrollView(OverScrollView)
查看>>
Nginx日志配置及配置调试
查看>>
(转)RabbitMQ学习之spring整合发送同步消息
查看>>
**alon_MM DMA Interface for PCIe使用详解
查看>>
svn up 排除目录更新
查看>>
Hive QL——深入浅出学Hive
查看>>
no matching function for call to ‘std::basic_string<char>::assign(std::string&, int)
查看>>
mybatis generator 生成中文注释
查看>>
InnoDB关键特性之change buffer
查看>>
linux内核源码中常见宏定义
查看>>
多线程过滤敏感词
查看>>