John's profileballboy yes! It's me! 我的...PhotosBlogListsMore ![]() | Help |
|
May 04 EXTJS利用local的json grid範例(JAVA) <script type="text/javascript">
<% boolean flag = (request.getParameter("userid") != null && request.getParameter("userid").length() > 8); boolean nameflag = (request.getParameter("username") != null && request.getParameter("username").length() >= 2); Transport.dao.MainDao mainlogin = new Transport.dao.MainDao();
TransBean[] trans = null;
if (flag) { trans = mainlogin.getTrans(request.getParameter("userid"));
//System.out.println("aaa:" + JSONObject.fromObject(trans[0]).toString()); } else if (nameflag) { //trans=mainlogin.getBankByName(request.getParameter("username"));
} %> Ext.onReady(function(){ Ext.QuickTips.init(); Ext.form.Field.prototype.msgTarget = 'side'; var colModel = new Ext.grid.ColumnModel([ new Ext.grid.RowNumberer(), {header: '姓名' ,dataIndex: 'NAME' }, {header: '身份證字號' ,dataIndex: 'IDNO' }, {header: '異動年度' ,dataIndex: 'TRS_YY' }, {header: '異動月份' ,dataIndex: 'TRS_MM' }, {header: '原因' ,dataIndex: 'REASON' }, {header: '核發天數' ,dataIndex: 'DAYS' }, {header: '處理別' ,dataIndex: 'FLAG' }, {header: '扣款年度' ,dataIndex: 'EFFECT_YY' }, {header: '扣款月份' ,dataIndex: 'EFFECT_MM' } ]); var sm = new Ext.grid.CheckboxSelectionModel();
var cm = new Ext.grid.ColumnModel([
new Ext.grid.RowNumberer(), sm, {header:'姓名',dataIndex:'NAME'}, {header:'身份證字號',dataIndex:'IDNO'}, {header:'異動年度',dataIndex:'TRS_YY'}, {header:'異動月份',dataIndex:'TRS_MM'}, {header:'原因',dataIndex:'REASON',editor: new Ext.form.TextField({ allowBlank: true, maxValue: 512 }) }, {header:'核發天數',dataIndex:'DAYS'}, {header:'處理別',dataIndex:'FLAG'}, {header:'扣款年度',dataIndex:'EFFECT_YY'}, {header:'扣款月份',dataIndex:'EFFECT_MM'} ]); cm.defaultSortable=true;
var data = {
'players':[ <%if (trans.length > 0) { for (int i = 0; i < trans.length; i++) { %> <%=JSONObject.fromObject(trans[i]).toString()%><%=(i != trans.length - 1) ? "," : ""%> <%} }%> ] }; var ds = new Ext.data.Store({ proxy:new Ext.data.MemoryProxy(data), reader:new Ext.data.JsonReader({root:'players'},[ {name:'DAYS'}, {name:'EFFECT_MM'}, {name:'EFFECT_YY'}, {name:'FLAG'}, {name:'IDNO'}, {name:'NAME'}, {name:'REASON'}, {name:'TRS_MM'}, {name:'TRS_YY'} ]) }); ds.load(); var grid = new Ext.grid.EditorGridPanel({ renderTo:'hello', cm:cm, ds:ds, sm:sm, title:'異動結果', width:740, autoHeight: true, listeners: { afteredit: function(e){ if (e.field != 'REASON' && e.value == ''){ Ext.Msg.alert('Status','錯誤更新!'); e.record.reject(); }else{ var conn = new Ext.data.Connection(); conn.request({ url: 'http://localhost:8084/Transport/Control?action=UPDATETRANS', params: { TRS_MM: e.record.TRS_MM, id: e.record.id, field: e.field, value: e.value }, success: function(resp,opt) { Ext.Msg.alert('Status','正確更新!'); e.commit(); }, failure: function(resp,opt) { Ext.Msg.alert('Status','錯誤更新!'); e.reject(); } }); } } }, viewConfig: { forceFit:true } }); } });
</script> |
|
|