<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=JavaScript_DHTML%2FExt_JS%2FJsonStore</id>
		<title>JavaScript DHTML/Ext JS/JsonStore - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=JavaScript_DHTML%2FExt_JS%2FJsonStore"/>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/Ext_JS/JsonStore&amp;action=history"/>
		<updated>2026-04-04T20:36:26Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wbex.ru/index.php?title=JavaScript_DHTML/Ext_JS/JsonStore&amp;diff=2430&amp;oldid=prev</id>
		<title> в 09:59, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/Ext_JS/JsonStore&amp;diff=2430&amp;oldid=prev"/>
				<updated>2010-05-26T09:59:51Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 09:59, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://wbex.ru/index.php?title=JavaScript_DHTML/Ext_JS/JsonStore&amp;diff=2431&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/Ext_JS/JsonStore&amp;diff=2431&amp;oldid=prev"/>
				<updated>2010-05-26T07:21:26Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Load JsonStore to GridPanel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Hello World Window&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;ext-3.0.0/resources/css/ext-all.css&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/adapter/ext/ext-base.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/ext-all.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;!-- Revised from demo code in ext3.0.0 --&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
Ext.onReady(function(){&lt;br /&gt;
    // create the Data Store&lt;br /&gt;
    var store = new Ext.data.JsonStore({&lt;br /&gt;
        root: &amp;quot;topics&amp;quot;,&lt;br /&gt;
        totalProperty: &amp;quot;totalCount&amp;quot;,&lt;br /&gt;
        idProperty: &amp;quot;threadid&amp;quot;,&lt;br /&gt;
        remoteSort: true,&lt;br /&gt;
        fields: [&lt;br /&gt;
            &amp;quot;title&amp;quot;, &amp;quot;forumtitle&amp;quot;, &amp;quot;forumid&amp;quot;, &amp;quot;author&amp;quot;,&lt;br /&gt;
            {name: &amp;quot;replycount&amp;quot;, type: &amp;quot;int&amp;quot;},&lt;br /&gt;
            {name: &amp;quot;lastpost&amp;quot;, mapping: &amp;quot;lastpost&amp;quot;, type: &amp;quot;date&amp;quot;, dateFormat: &amp;quot;timestamp&amp;quot;},&lt;br /&gt;
            &amp;quot;lastposter&amp;quot;, &amp;quot;excerpt&amp;quot;&lt;br /&gt;
        ],&lt;br /&gt;
        // load using script tags for cross domain, if the data in on the same domain as&lt;br /&gt;
        // this page, an HttpProxy would be better&lt;br /&gt;
        proxy: new Ext.data.ScriptTagProxy({&lt;br /&gt;
            url: &amp;quot;http://extjs.ru/forum/topics-browse-remote.php&amp;quot;&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    store.setDefaultSort(&amp;quot;lastpost&amp;quot;, &amp;quot;desc&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    // pluggable renders&lt;br /&gt;
    function renderTopic(value, p, record){&lt;br /&gt;
        return String.format(&lt;br /&gt;
                &amp;quot;&amp;lt;b&amp;gt;&amp;lt;a href=&amp;quot;http://extjs.ru/forum/showthread.php?t={2}&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;{0}&amp;lt;/a&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;a href=&amp;quot;http://extjs.ru/forum/forumdisplay.php?f={3}&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;{1} Forum&amp;lt;/a&amp;gt;&amp;quot;,&lt;br /&gt;
                value, record.data.forumtitle, record.id, record.data.forumid);&lt;br /&gt;
    }&lt;br /&gt;
    function renderLast(value, p, r){&lt;br /&gt;
        return String.format(&amp;quot;{0}&amp;lt;br/&amp;gt;by {1}&amp;quot;, value.dateFormat(&amp;quot;M j, Y, g:i a&amp;quot;), r.data[&amp;quot;lastposter&amp;quot;]);&lt;br /&gt;
    }&lt;br /&gt;
    var grid = new Ext.grid.GridPanel({&lt;br /&gt;
        width:700,&lt;br /&gt;
        height:500,&lt;br /&gt;
        title:&amp;quot;ExtJS.ru - Browse Forums&amp;quot;,&lt;br /&gt;
        store: store,&lt;br /&gt;
        trackMouseOver:false,&lt;br /&gt;
        disableSelection:true,&lt;br /&gt;
        loadMask: true,&lt;br /&gt;
        // grid columns&lt;br /&gt;
        columns:[{&lt;br /&gt;
            id: &amp;quot;topic&amp;quot;, // id assigned so we can apply custom css (e.g. .x-grid-col-topic b { color:#333 })&lt;br /&gt;
            header: &amp;quot;Topic&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;title&amp;quot;,&lt;br /&gt;
            width: 420,&lt;br /&gt;
            renderer: renderTopic,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        },{&lt;br /&gt;
            header: &amp;quot;Author&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;author&amp;quot;,&lt;br /&gt;
            width: 100,&lt;br /&gt;
            hidden: true,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        },{&lt;br /&gt;
            header: &amp;quot;Replies&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;replycount&amp;quot;,&lt;br /&gt;
            width: 70,&lt;br /&gt;
            align: &amp;quot;right&amp;quot;,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        },{&lt;br /&gt;
            id: &amp;quot;last&amp;quot;,&lt;br /&gt;
            header: &amp;quot;Last Post&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;lastpost&amp;quot;,&lt;br /&gt;
            width: 150,&lt;br /&gt;
            renderer: renderLast,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        }],&lt;br /&gt;
        // customize view config&lt;br /&gt;
        viewConfig: {&lt;br /&gt;
            forceFit:true,&lt;br /&gt;
            enableRowBody:true,&lt;br /&gt;
            showPreview:true,&lt;br /&gt;
            getRowClass : function(record, rowIndex, p, store){&lt;br /&gt;
                if(this.showPreview){&lt;br /&gt;
                    p.body = &amp;quot;&amp;lt;p&amp;gt;&amp;quot;+record.data.excerpt+&amp;quot;&amp;lt;/p&amp;gt;&amp;quot;;&lt;br /&gt;
                    return &amp;quot;x-grid3-row-expanded&amp;quot;;&lt;br /&gt;
                }&lt;br /&gt;
                return &amp;quot;x-grid3-row-collapsed&amp;quot;;&lt;br /&gt;
            }&lt;br /&gt;
        },&lt;br /&gt;
        // paging bar on the bottom&lt;br /&gt;
        bbar: new Ext.PagingToolbar({&lt;br /&gt;
            pageSize: 25,&lt;br /&gt;
            store: store,&lt;br /&gt;
            displayInfo: true,&lt;br /&gt;
            displayMsg: &amp;quot;Displaying topics {0} - {1} of {2}&amp;quot;,&lt;br /&gt;
            emptyMsg: &amp;quot;No topics to display&amp;quot;,&lt;br /&gt;
            items:[&lt;br /&gt;
                &amp;quot;-&amp;quot;, {&lt;br /&gt;
                pressed: true,&lt;br /&gt;
                enableToggle:true,&lt;br /&gt;
                text: &amp;quot;Show Preview&amp;quot;,&lt;br /&gt;
                cls: &amp;quot;x-btn-text-icon details&amp;quot;,&lt;br /&gt;
                toggleHandler: function(btn, pressed){&lt;br /&gt;
                    var view = grid.getView();&lt;br /&gt;
                    view.showPreview = pressed;&lt;br /&gt;
                    view.refresh();&lt;br /&gt;
                }&lt;br /&gt;
            }]&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    // render it&lt;br /&gt;
    grid.render(&amp;quot;topic-grid&amp;quot;);&lt;br /&gt;
    // trigger the data store load&lt;br /&gt;
    store.load({params:{start:0, limit:25}});&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;topic-grid&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Remote Ext.data.JsonStore==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Hello World Window&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;ext-3.0.0/resources/css/ext-all.css&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/adapter/ext/ext-base.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/ext-all.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;!-- Revised from demo code in ext3.0.0 --&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
Ext.onReady(function(){&lt;br /&gt;
    // create the Data Store&lt;br /&gt;
    var store = new Ext.data.JsonStore({&lt;br /&gt;
        root: &amp;quot;topics&amp;quot;,&lt;br /&gt;
        totalProperty: &amp;quot;totalCount&amp;quot;,&lt;br /&gt;
        idProperty: &amp;quot;threadid&amp;quot;,&lt;br /&gt;
        remoteSort: true,&lt;br /&gt;
        fields: [&lt;br /&gt;
            &amp;quot;title&amp;quot;, &amp;quot;forumtitle&amp;quot;, &amp;quot;forumid&amp;quot;, &amp;quot;author&amp;quot;,&lt;br /&gt;
            {name: &amp;quot;replycount&amp;quot;, type: &amp;quot;int&amp;quot;},&lt;br /&gt;
            {name: &amp;quot;lastpost&amp;quot;, mapping: &amp;quot;lastpost&amp;quot;, type: &amp;quot;date&amp;quot;, dateFormat: &amp;quot;timestamp&amp;quot;},&lt;br /&gt;
            &amp;quot;lastposter&amp;quot;, &amp;quot;excerpt&amp;quot;&lt;br /&gt;
        ],&lt;br /&gt;
        // load using script tags for cross domain, if the data in on the same domain as&lt;br /&gt;
        // this page, an HttpProxy would be better&lt;br /&gt;
        proxy: new Ext.data.ScriptTagProxy({&lt;br /&gt;
            url: &amp;quot;http://extjs.ru/forum/topics-browse-remote.php&amp;quot;&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    store.setDefaultSort(&amp;quot;lastpost&amp;quot;, &amp;quot;desc&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    // pluggable renders&lt;br /&gt;
    function renderTopic(value, p, record){&lt;br /&gt;
        return String.format(&lt;br /&gt;
                &amp;quot;&amp;lt;b&amp;gt;&amp;lt;a href=&amp;quot;http://extjs.ru/forum/showthread.php?t={2}&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;{0}&amp;lt;/a&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;a href=&amp;quot;http://extjs.ru/forum/forumdisplay.php?f={3}&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;{1} Forum&amp;lt;/a&amp;gt;&amp;quot;,&lt;br /&gt;
                value, record.data.forumtitle, record.id, record.data.forumid);&lt;br /&gt;
    }&lt;br /&gt;
    function renderLast(value, p, r){&lt;br /&gt;
        return String.format(&amp;quot;{0}&amp;lt;br/&amp;gt;by {1}&amp;quot;, value.dateFormat(&amp;quot;M j, Y, g:i a&amp;quot;), r.data[&amp;quot;lastposter&amp;quot;]);&lt;br /&gt;
    }&lt;br /&gt;
    var grid = new Ext.grid.GridPanel({&lt;br /&gt;
        width:700,&lt;br /&gt;
        height:500,&lt;br /&gt;
        title:&amp;quot;ExtJS.ru - Browse Forums&amp;quot;,&lt;br /&gt;
        store: store,&lt;br /&gt;
        trackMouseOver:false,&lt;br /&gt;
        disableSelection:true,&lt;br /&gt;
        loadMask: true,&lt;br /&gt;
        // grid columns&lt;br /&gt;
        columns:[{&lt;br /&gt;
            id: &amp;quot;topic&amp;quot;, // id assigned so we can apply custom css (e.g. .x-grid-col-topic b { color:#333 })&lt;br /&gt;
            header: &amp;quot;Topic&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;title&amp;quot;,&lt;br /&gt;
            width: 420,&lt;br /&gt;
            renderer: renderTopic,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        },{&lt;br /&gt;
            header: &amp;quot;Author&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;author&amp;quot;,&lt;br /&gt;
            width: 100,&lt;br /&gt;
            hidden: true,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        },{&lt;br /&gt;
            header: &amp;quot;Replies&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;replycount&amp;quot;,&lt;br /&gt;
            width: 70,&lt;br /&gt;
            align: &amp;quot;right&amp;quot;,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        },{&lt;br /&gt;
            id: &amp;quot;last&amp;quot;,&lt;br /&gt;
            header: &amp;quot;Last Post&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;lastpost&amp;quot;,&lt;br /&gt;
            width: 150,&lt;br /&gt;
            renderer: renderLast,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        }],&lt;br /&gt;
        // customize view config&lt;br /&gt;
        viewConfig: {&lt;br /&gt;
            forceFit:true,&lt;br /&gt;
            enableRowBody:true,&lt;br /&gt;
            showPreview:true,&lt;br /&gt;
            getRowClass : function(record, rowIndex, p, store){&lt;br /&gt;
                if(this.showPreview){&lt;br /&gt;
                    p.body = &amp;quot;&amp;lt;p&amp;gt;&amp;quot;+record.data.excerpt+&amp;quot;&amp;lt;/p&amp;gt;&amp;quot;;&lt;br /&gt;
                    return &amp;quot;x-grid3-row-expanded&amp;quot;;&lt;br /&gt;
                }&lt;br /&gt;
                return &amp;quot;x-grid3-row-collapsed&amp;quot;;&lt;br /&gt;
            }&lt;br /&gt;
        },&lt;br /&gt;
        // paging bar on the bottom&lt;br /&gt;
        bbar: new Ext.PagingToolbar({&lt;br /&gt;
            pageSize: 25,&lt;br /&gt;
            store: store,&lt;br /&gt;
            displayInfo: true,&lt;br /&gt;
            displayMsg: &amp;quot;Displaying topics {0} - {1} of {2}&amp;quot;,&lt;br /&gt;
            emptyMsg: &amp;quot;No topics to display&amp;quot;,&lt;br /&gt;
            items:[&lt;br /&gt;
                &amp;quot;-&amp;quot;, {&lt;br /&gt;
                pressed: true,&lt;br /&gt;
                enableToggle:true,&lt;br /&gt;
                text: &amp;quot;Show Preview&amp;quot;,&lt;br /&gt;
                cls: &amp;quot;x-btn-text-icon details&amp;quot;,&lt;br /&gt;
                toggleHandler: function(btn, pressed){&lt;br /&gt;
                    var view = grid.getView();&lt;br /&gt;
                    view.showPreview = pressed;&lt;br /&gt;
                    view.refresh();&lt;br /&gt;
                }&lt;br /&gt;
            }]&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    // render it&lt;br /&gt;
    grid.render(&amp;quot;topic-grid&amp;quot;);&lt;br /&gt;
    // trigger the data store load&lt;br /&gt;
    store.load({params:{start:0, limit:25}});&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;topic-grid&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Set Default Sort for Ext.data.JsonStore==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Hello World Window&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;ext-3.0.0/resources/css/ext-all.css&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/adapter/ext/ext-base.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/ext-all.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;!-- Revised from demo code in ext3.0.0 --&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
Ext.onReady(function(){&lt;br /&gt;
    // create the Data Store&lt;br /&gt;
    var store = new Ext.data.JsonStore({&lt;br /&gt;
        root: &amp;quot;topics&amp;quot;,&lt;br /&gt;
        totalProperty: &amp;quot;totalCount&amp;quot;,&lt;br /&gt;
        idProperty: &amp;quot;threadid&amp;quot;,&lt;br /&gt;
        remoteSort: true,&lt;br /&gt;
        fields: [&lt;br /&gt;
            &amp;quot;title&amp;quot;, &amp;quot;forumtitle&amp;quot;, &amp;quot;forumid&amp;quot;, &amp;quot;author&amp;quot;,&lt;br /&gt;
            {name: &amp;quot;replycount&amp;quot;, type: &amp;quot;int&amp;quot;},&lt;br /&gt;
            {name: &amp;quot;lastpost&amp;quot;, mapping: &amp;quot;lastpost&amp;quot;, type: &amp;quot;date&amp;quot;, dateFormat: &amp;quot;timestamp&amp;quot;},&lt;br /&gt;
            &amp;quot;lastposter&amp;quot;, &amp;quot;excerpt&amp;quot;&lt;br /&gt;
        ],&lt;br /&gt;
        // load using script tags for cross domain, if the data in on the same domain as&lt;br /&gt;
        // this page, an HttpProxy would be better&lt;br /&gt;
        proxy: new Ext.data.ScriptTagProxy({&lt;br /&gt;
            url: &amp;quot;http://extjs.ru/forum/topics-browse-remote.php&amp;quot;&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    store.setDefaultSort(&amp;quot;lastpost&amp;quot;, &amp;quot;desc&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    // pluggable renders&lt;br /&gt;
    function renderTopic(value, p, record){&lt;br /&gt;
        return String.format(&lt;br /&gt;
                &amp;quot;&amp;lt;b&amp;gt;&amp;lt;a href=&amp;quot;http://extjs.ru/forum/showthread.php?t={2}&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;{0}&amp;lt;/a&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;a href=&amp;quot;http://extjs.ru/forum/forumdisplay.php?f={3}&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;{1} Forum&amp;lt;/a&amp;gt;&amp;quot;,&lt;br /&gt;
                value, record.data.forumtitle, record.id, record.data.forumid);&lt;br /&gt;
    }&lt;br /&gt;
    function renderLast(value, p, r){&lt;br /&gt;
        return String.format(&amp;quot;{0}&amp;lt;br/&amp;gt;by {1}&amp;quot;, value.dateFormat(&amp;quot;M j, Y, g:i a&amp;quot;), r.data[&amp;quot;lastposter&amp;quot;]);&lt;br /&gt;
    }&lt;br /&gt;
    var grid = new Ext.grid.GridPanel({&lt;br /&gt;
        width:700,&lt;br /&gt;
        height:500,&lt;br /&gt;
        title:&amp;quot;ExtJS.ru - Browse Forums&amp;quot;,&lt;br /&gt;
        store: store,&lt;br /&gt;
        trackMouseOver:false,&lt;br /&gt;
        disableSelection:true,&lt;br /&gt;
        loadMask: true,&lt;br /&gt;
        // grid columns&lt;br /&gt;
        columns:[{&lt;br /&gt;
            id: &amp;quot;topic&amp;quot;, // id assigned so we can apply custom css (e.g. .x-grid-col-topic b { color:#333 })&lt;br /&gt;
            header: &amp;quot;Topic&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;title&amp;quot;,&lt;br /&gt;
            width: 420,&lt;br /&gt;
            renderer: renderTopic,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        },{&lt;br /&gt;
            header: &amp;quot;Author&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;author&amp;quot;,&lt;br /&gt;
            width: 100,&lt;br /&gt;
            hidden: true,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        },{&lt;br /&gt;
            header: &amp;quot;Replies&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;replycount&amp;quot;,&lt;br /&gt;
            width: 70,&lt;br /&gt;
            align: &amp;quot;right&amp;quot;,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        },{&lt;br /&gt;
            id: &amp;quot;last&amp;quot;,&lt;br /&gt;
            header: &amp;quot;Last Post&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;lastpost&amp;quot;,&lt;br /&gt;
            width: 150,&lt;br /&gt;
            renderer: renderLast,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        }],&lt;br /&gt;
        // customize view config&lt;br /&gt;
        viewConfig: {&lt;br /&gt;
            forceFit:true,&lt;br /&gt;
            enableRowBody:true,&lt;br /&gt;
            showPreview:true,&lt;br /&gt;
            getRowClass : function(record, rowIndex, p, store){&lt;br /&gt;
                if(this.showPreview){&lt;br /&gt;
                    p.body = &amp;quot;&amp;lt;p&amp;gt;&amp;quot;+record.data.excerpt+&amp;quot;&amp;lt;/p&amp;gt;&amp;quot;;&lt;br /&gt;
                    return &amp;quot;x-grid3-row-expanded&amp;quot;;&lt;br /&gt;
                }&lt;br /&gt;
                return &amp;quot;x-grid3-row-collapsed&amp;quot;;&lt;br /&gt;
            }&lt;br /&gt;
        },&lt;br /&gt;
        // paging bar on the bottom&lt;br /&gt;
        bbar: new Ext.PagingToolbar({&lt;br /&gt;
            pageSize: 25,&lt;br /&gt;
            store: store,&lt;br /&gt;
            displayInfo: true,&lt;br /&gt;
            displayMsg: &amp;quot;Displaying topics {0} - {1} of {2}&amp;quot;,&lt;br /&gt;
            emptyMsg: &amp;quot;No topics to display&amp;quot;,&lt;br /&gt;
            items:[&lt;br /&gt;
                &amp;quot;-&amp;quot;, {&lt;br /&gt;
                pressed: true,&lt;br /&gt;
                enableToggle:true,&lt;br /&gt;
                text: &amp;quot;Show Preview&amp;quot;,&lt;br /&gt;
                cls: &amp;quot;x-btn-text-icon details&amp;quot;,&lt;br /&gt;
                toggleHandler: function(btn, pressed){&lt;br /&gt;
                    var view = grid.getView();&lt;br /&gt;
                    view.showPreview = pressed;&lt;br /&gt;
                    view.refresh();&lt;br /&gt;
                }&lt;br /&gt;
            }]&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    // render it&lt;br /&gt;
    grid.render(&amp;quot;topic-grid&amp;quot;);&lt;br /&gt;
    // trigger the data store load&lt;br /&gt;
    store.load({params:{start:0, limit:25}});&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;topic-grid&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Use JsonStore to hold the table data and column mapping==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Hello World Window&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;ext-3.0.0/resources/css/ext-all.css&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/adapter/ext/ext-base.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/ext-all.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;!-- Revised from demo code from ext3.0.0 --&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
Ext.onReady(function() {&lt;br /&gt;
    var myData = {&lt;br /&gt;
    records : [&lt;br /&gt;
      { name : &amp;quot;Record 0&amp;quot;, column1 : &amp;quot;0&amp;quot;, column2 : &amp;quot;0&amp;quot; },&lt;br /&gt;
      { name : &amp;quot;Record 1&amp;quot;, column1 : &amp;quot;1&amp;quot;, column2 : &amp;quot;1&amp;quot; },&lt;br /&gt;
      { name : &amp;quot;Record 2&amp;quot;, column1 : &amp;quot;2&amp;quot;, column2 : &amp;quot;2&amp;quot; },&lt;br /&gt;
      { name : &amp;quot;Record 3&amp;quot;, column1 : &amp;quot;3&amp;quot;, column2 : &amp;quot;3&amp;quot; },&lt;br /&gt;
      { name : &amp;quot;Record 4&amp;quot;, column1 : &amp;quot;4&amp;quot;, column2 : &amp;quot;4&amp;quot; },&lt;br /&gt;
      { name : &amp;quot;Record 5&amp;quot;, column1 : &amp;quot;5&amp;quot;, column2 : &amp;quot;5&amp;quot; },&lt;br /&gt;
      { name : &amp;quot;Record 6&amp;quot;, column1 : &amp;quot;6&amp;quot;, column2 : &amp;quot;6&amp;quot; },&lt;br /&gt;
      { name : &amp;quot;Record 7&amp;quot;, column1 : &amp;quot;7&amp;quot;, column2 : &amp;quot;7&amp;quot; },&lt;br /&gt;
      { name : &amp;quot;Record 8&amp;quot;, column1 : &amp;quot;8&amp;quot;, column2 : &amp;quot;8&amp;quot; },&lt;br /&gt;
      { name : &amp;quot;Record 9&amp;quot;, column1 : &amp;quot;9&amp;quot;, column2 : &amp;quot;9&amp;quot; }&lt;br /&gt;
    ]&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
  // Generic fields array to use in both store defs.&lt;br /&gt;
  var fields = [&lt;br /&gt;
     {name: &amp;quot;name&amp;quot;, mapping : &amp;quot;name&amp;quot;},&lt;br /&gt;
     {name: &amp;quot;column1&amp;quot;, mapping : &amp;quot;column1&amp;quot;},&lt;br /&gt;
     {name: &amp;quot;column2&amp;quot;, mapping : &amp;quot;column2&amp;quot;}&lt;br /&gt;
  ];&lt;br /&gt;
    // create the data store&lt;br /&gt;
    var gridStore = new Ext.data.JsonStore({&lt;br /&gt;
        fields : fields,&lt;br /&gt;
    data   : myData,&lt;br /&gt;
    root   : &amp;quot;records&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
  // Column Model shortcut array&lt;br /&gt;
  var cols = [&lt;br /&gt;
    { id : &amp;quot;name&amp;quot;, header: &amp;quot;Record Name&amp;quot;, width: 160, sortable: true, dataIndex: &amp;quot;name&amp;quot;},&lt;br /&gt;
    {header: &amp;quot;column1&amp;quot;, width: 50, sortable: true, dataIndex: &amp;quot;column1&amp;quot;},&lt;br /&gt;
    {header: &amp;quot;column2&amp;quot;, width: 50, sortable: true, dataIndex: &amp;quot;column2&amp;quot;}&lt;br /&gt;
  ];&lt;br /&gt;
  // declare the source Grid&lt;br /&gt;
    var grid = new Ext.grid.GridPanel({&lt;br /&gt;
    ddGroup          : &amp;quot;gridDDGroup&amp;quot;,&lt;br /&gt;
        store            : gridStore,&lt;br /&gt;
        columns          : cols,&lt;br /&gt;
    enableDragDrop   : true,&lt;br /&gt;
        stripeRows       : true,&lt;br /&gt;
        autoExpandColumn : &amp;quot;name&amp;quot;,&lt;br /&gt;
        width            : 650,&lt;br /&gt;
        height           : 325,&lt;br /&gt;
    region           : &amp;quot;west&amp;quot;,&lt;br /&gt;
        title            : &amp;quot;Data Grid&amp;quot;,&lt;br /&gt;
    selModel         : new Ext.grid.RowSelectionModel({singleSelect : true})&lt;br /&gt;
    });&lt;br /&gt;
  //Simple &amp;quot;border layout&amp;quot; panel to house both grids&lt;br /&gt;
  var displayPanel = new Ext.Panel({&lt;br /&gt;
    width    : 650,&lt;br /&gt;
    height   : 300,&lt;br /&gt;
    layout: &amp;quot;fit&amp;quot;,&lt;br /&gt;
    renderTo : &amp;quot;panel&amp;quot;,&lt;br /&gt;
    items    : [&lt;br /&gt;
      grid&lt;br /&gt;
    ],&lt;br /&gt;
    bbar    : [&lt;br /&gt;
      &amp;quot;-&amp;gt;&amp;quot;, // Fill&lt;br /&gt;
      {&lt;br /&gt;
        text    : &amp;quot;Reset Example&amp;quot;,&lt;br /&gt;
        handler : function() {&lt;br /&gt;
          //refresh source grid&lt;br /&gt;
          gridStore.loadData(myData);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    ]&lt;br /&gt;
  });&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/script&amp;gt; &lt;br /&gt;
&amp;lt;div id=&amp;quot;panel&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>