打扰各位,最近在做这方面的项目,因为EXtjs是自学的,所以现在遇到Springside3封装了数据,不知道该怎么用EXtjs去请求,我大概想实现的是:点菜单栏,把包含数据的页面显示在右边。我不知道如何把SpringSide3的数据转换后放到一个页面上,然后用EXtjs加载,望知道或做过的朋友,指教指教,不甚感激!
使用json。。这个json插件会给你包装的。
插件地址[url]http://code.google.com/p/jsonplugin/[/url]
附上一个使用实例[url]http://ajava.org/course/ajax/14590.html[/url]
你点击菜单的时候肯定会触发一个Action的,Action返回的有数据,把这些返回的数据使用Extjs铺到页面上就行了,这个和平常的用的时候是一样的
首先extjs和后台语言无关
如何请求如果是grid 一般都是store.load(这里可能有参数比方start或者limit)
后台只要返回一个满足ext的grid数据格式就行 一般用json格式或者xml格式
一个简单例子:
[code="java"] <br> Ext.onReady(function(){<br> var sm =new Ext.grid.CheckboxSelectionModel();<br> var cm = new Ext.grid.ColumnModel([<br> sm,<br> {header:'编号',dataIndex:'id',sortable:true},<br> {header:'名称',dataIndex:'name',sortable:true},<br> {header:'操作',dataIndex:'descn',sortable:true}<br> ]);</p> <pre><code> var reader = new Ext.data.JsonReader({ totalProperty: 'count', root: 'rows',// id:"id",//The property within each row object that provides an ID for the record (可选) fields:[ {name: 'id',mapping:"id"}, {name: 'name',mapping:"name"}, {name: 'descn',mapping:"descn"} ] }) var store = new Ext.data.Store({ proxy: Ext.data.HttpProxy({url:"对应后台一个地址"}) reader: reader }); var grid = new Ext.grid.GridPanel({ height: 200, applyTo: 'grid', width :310, store: store, cm: cm, sm:sm, frame:"true" }); store.load({params:{start:0,limit:5}});//请求后台 </code></pre> <p>});<br>
<div id="grid"></div>
</body>
[/code]
后台返回的数据格式 [code="java"]{
count:5,//总数
rows:[
{id:'1',name:'name1d',descn:'descn1'},
{id:'2',name:'name1d',descn:'descn1'},
{id:'4',name:'name1d',descn:'descn1'},
{id:'5',name:'name1d',descn:'descn1'},
{id:'3',name:'name2',descn:'descn2'}
]
}[/code]