欢迎您访问我爱IT技术网,今天小编为你分享的javascript教程:【gridpanel动态加载数据的实例代码】,下面是详细的讲解!
gridpanel动态加载数据的实例代码
<script type='text/javascript'>
function editEsOrder(options,success,response){
if (success){
var tagModelManager_maxOrderIdJson=Ext.util.JSON.decode(response.responseText);
var orderValue=tagModelManager_maxOrderIdJson.maxOrderId ;
Ext.getCmp('esorder').setValue(orderValue) ;
}
}
var tagModelManager_toolBar=new Ext.Toolbar({
items:[
{id:'tagModel_Save',text:'添加',iconCls:'add',handler:tagModel_Save}
,'-',
{id:'tagModel_dropSelected',text:'删除',iconCls:'remove',handler:tagModel_dropSelected}
]});
new Ext.grid.GridPanel({
id:'tagModelManager_tagModelGrid',
autoScroll:true, store:new Ext.data.Store(),
cm:new Ext.grid.ColumnModel([new Ext.grid.RowNumberer()]),
sm:new Ext.grid.CheckboxSelectionModel(),
renderTo:'tagModelManager_tagModelDiv',
width:Ext.getCmp('TagModel_win').getSize().width-16,
height:Ext.getCmp('TagModel_win').getSize().height-35,
hideHeaders :false,
loadMask:{msg:'正在加载数据,请稍候....'},
collapsible : true,
collapsed : false,
bbar:new Ext.PagingToolbar({
id:'tagModelManager_tagModelPagingBar',
pageSize:getComboValue(),
store:new Ext.data.Store(),
displayInfo:true
}),
tbar:tagModelManager_toolBar
});
Ext.getCmp('tagModelManager_tagModelGrid').render() ;
Ext.getCmp('tagModelManager_tagModelGrid').on('rowdblclick', tagModelSelectRowDblClickEvent);
function tagModelSelectRowDblClickEvent(selectionModel, rowIndex, selectedRecord) {
var selectedRows=Ext.getCmp('tagModelManager_tagModelGrid').getSelectionModel().getSelections();
var row=selectedRows[0];
tagModel_SaveOrEdit('edit',row);
}
function tagModel_Save() {
tagModel_SaveOrEdit('save');
}
function tagModelList_search() {
Ext.Ajax.request({
url:'editTagModel.html?method=getParams',
callback:getSearchList
});
}
function getSearchList(options,success,response) {
if (success){
var tagModelManager_json=Ext.util.JSON.decode(response.responseText);
tagModelManager_tagModelGridTitle=tagModelManager_json.tagModelManager_tagModelGridTitle;
var record=tagModelManager_json.record ;
var tagModelManager_tagModelColumnModels=tagModelManager_json.tagModelManager_tagModelColumnModels ;
var tagModelManager_tagModelColumnModel=new Ext.grid.ColumnModel(Ext.util.JSON.decode("["+"new Ext.grid.RowNumberer()"+","+"new Ext.grid.CheckboxSelectionModel()"+","+tagModelManager_tagModelColumnModels+"]"));
tagModelManager_tagModelColumnModel.defaultSortable=true;
var strucutreModelManager_tagModelDataStore=new Ext.data.Store({
baseParams: { tagModelKeyword : Ext.getCmp('tagModelManager_search_button').el.dom.value.trim() },
proxy:new Ext.data.HttpProxy({
url:'editTagModel.html?method=getTagModelDataList'
}),
reader:new Ext.data.JsonReader({
totalProperty:'resultSize',root:'tagModelList'},Ext.util.JSON.decode(record)) });
Ext.getCmp('tagModelManager_tagModelPagingBar').bind(strucutreModelManager_tagModelDataStore);
strucutreModelManager_tagModelDataStore.load({params:{start:0,limit:getComboValue()}}) ;
Ext.getCmp('tagModelManager_tagModelGrid').setTitle(tagModelManager_tagModelGridTitle) ;
Ext.getCmp('tagModelManager_tagModelGrid').reconfigure(strucutreModelManager_tagModelDataStore,tagModelManager_tagModelColumnModel);
Ext.getCmp('tagModelManager_tagModelGrid').expand(false) ;
}
}
function tagModelList_all(){
Ext.Ajax.request({
url:'editTagModel.html?method=getParams',
callback:getTagModel
});
}
function getTagModel(options,success,response){
if (success){
var tagModelManager_json=Ext.util.JSON.decode(response.responseText);
tagModelManager_tagModelGridTitle=tagModelManager_json.tagModelManager_tagModelGridTitle;
var record=tagModelManager_json.record ;
var tagModelManager_tagModelColumnModels=tagModelManager_json.tagModelManager_tagModelColumnModels ;
var tagModelManager_tagModelColumnModel=new Ext.grid.ColumnModel(Ext.util.JSON.decode("["+"new Ext.grid.RowNumberer()"+","+"new Ext.grid.CheckboxSelectionModel()"+","+tagModelManager_tagModelColumnModels+"]"));
tagModelManager_tagModelColumnModel.defaultSortable=true;
var strucutreModelManager_tagModelDataStore=new Ext.data.Store({
proxy:new Ext.data.HttpProxy({
url:'editTagModel.html?method=getTagModelDataList'
}),
reader:new Ext.data.JsonReader({
totalProperty:'resultSize',root:'tagModelList'},Ext.util.JSON.decode(record)) });
Ext.getCmp('tagModelManager_tagModelPagingBar').bind(strucutreModelManager_tagModelDataStore);
strucutreModelManager_tagModelDataStore.load({params:{start:0,limit:getComboValue()}}) ;
Ext.getCmp('tagModelManager_tagModelGrid').reconfigure(strucutreModelManager_tagModelDataStore,tagModelManager_tagModelColumnModel);
Ext.getCmp('tagModelManager_tagModelGrid').expand(false) ;
}
}
Ext.Ajax.request({
url:'editTagModel.html?method=getParams',
callback:getTagModel
});
</script>
public void getTagModelDataList(ActionMapping mapping, ActionForm actionform,HttpServletRequest request, HttpServletResponse response){
ITagModelManager tagmgr=this.getPkgServer().getDriver().getOperateServer().getTagModelManager() ;
List<HashMap<String,String>> models=new ArrayList<HashMap<String,String>>();
String tagModelKeyword=request.getParameter("tagModelKeyword");
List<EssTagModel> tagModels ;
tagModels= tagmgr.getEssTagModels() ;
int resultSize=0 ;
if (null !=tagModels && !tagModels.isEmpty()){
//数据分页显示
resultSize=tagModels.size() ;
String start=request.getParameter("start") ;
String perPage=request.getParameter("limit") ;
String esType="";
if (null !=start && null !=perPage){
int fromIdx=Integer.parseInt(start);
int per= Integer.parseInt(perPage);
int toIdx=fromIdx + per ;
if (toIdx > resultSize) toIdx=resultSize ;
tagModels=tagModels.subList(fromIdx,toIdx) ;
}
for(EssTagModel etm : tagModels){
HashMap<String,String> map=new HashMap<String, String>();
map.put("id", Long.toString(etm.getId())) ;
map.put("esidentifier", etm.getEsidentifier()) ;
map.put("estype", etm.getEstype()) ;
map.put("esdescription", etm.getEsdescription()) ;
map.put("esorder", Long.toString(etm.getEsorder())) ;
map.put("metadata", etm.getMetadata()) ;
models.add(map) ;
}
}
JSONObject json=new JSONObject();
JSONArray ary=new JSONArray(models);
json.put("tagModelList", ary);
json.put("resultSize",resultSize);
writeJson(response, json.toString()) ;
}
public void getParams(ActionMapping mapping, ActionForm actionform,HttpServletRequest request, HttpServletResponse response){
LinkedHashMap<String,String> tags=new LinkedHashMap<String,String>() ;
tags.put("id", "id") ;
tags.put("esidentifier", "字段") ;
tags.put("estype", "类型") ;
tags.put("esdescription", "描述") ;
tags.put("esorder", "顺序") ;
tags.put("metadata", "元数据") ;
tags.put("esisnull", "是否为必填项") ;
tags.put("eslength", "字段长度") ;
tags.put("esdotlength", "小数点位数") ;
tags.put("esissystem", "是否为系统字段") ;
JSONObject json=new JSONObject();
json.put("record", getJsonRecord(tags)) ;
json.put("tagModelManager_tagModelColumnModels", getJsonColumnModel(tags)) ;
writeJson(response,json.toString());
}
关于gridpanel动态加载数据的实例代码的用户互动如下:
相关问题:Extjs 4.x 为GridPanel动态添加一行数据
答://声明对应grid的Record对象 var ItemRecord = Ext.data.Record.create([ {name:'itemid'}, {name:'itemcode'}, {name:'itemname'}, {name:'price'}, {name:'mark'} ]); //点新增按钮时则执行类似如下函数 function addNewLine2Grid(grid){ var ... >>详细
相关问题:怎样动态添加gridpanel 值?以及怎样根据下标取得g...
答:首先取得gridPanel里面的store,然后可以调用add 和insert方法来对store进行值的插入。再refresh一下gridPanel,数据就出来了~~ gridPanel有相应的方法,取得已经选择的记录。 gridPanel.getSelectionModel().getSelections();//取得所选的记录 ... >>详细
相关问题:如何动态添加gridPanel的列
答:Ext.onReady(function() { var sm=new Ext.grid.CheckboxSelectionModel(); var cm=[new Ext.grid.RowNumberer(),sm, {header:"编号", dataIndex:"id", width:65,hidden : true}, {header:"名称", dataIndex:"name", width:65}, {header:"路径",... >>详细
- 【firefox】firefox浏览器不支持innerText的解决
- 【Extjs】Extjs学习过程中新手容易碰到的低级错误
- 【clearInterval】js clearInterval()方法的定义
- 【ComboBox】ComboBox 和 DateField 在IE下消失的
- 【dom】javascript dom追加内容实现示例-追加内容
- 【has】基于jquery的has()方法以及与find()方法以
- 【extjs】Extjs入门之动态加载树代码-动态加载树
- 【checkbox】让checkbox不选中即将选中的checkbox
- 【Array】js中更短的 Array 类型转换-类型转换
- 【append】append和appendTo的区别以及appendChil
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
