ext 查询,GridPanel怎么重新加载数据?

sw245711601 2011-09-19 02:59:44


var store = new Ext.data.JsonStore({
proxy :new Ext.data.HttpProxy( {
//method :'get',get模式下提交不了页面的参数
method:'post',
url :'WorkTaskList.aspx'
}),
root :'root',
totalProperty :'totalProperty',
idProperty: 'threadid',

remoteSort: true,
fields: [{name:"flag" , type:"int"},
{name:"task_no" , type:"string"} ,
{name:"task_person" , type:"string"} ,
{name:"create_date" , type:"string"},
{name:"caozuo" , type:"string"}
]
});


/**
* 生成Bbar,用于分页显示
*/
var bbar = new Ext.PagingToolbar( {
pageSize :10,
store :store,
displayInfo :true,
displayMsg :'显示第{0}条到{1}条记录,一共{2}条',
emptyMsg :'没有记录'
});

/**
* 声明一个Grid,列表显示信息
*/
var grid = new Ext.grid.GridPanel( {

title :'工作任务单',
height :600,
bodyStyle:'width:100%',
//trackMouseOver :false,
loadMask : {
msg :'正在加载数据,请稍后.....'
},
viewConfig:
{
columnsText: '列',
sortAscText: '升序',
sortDescText: '降序',
forceFit:true
},
ds :store,
cm :cm,
sm :sm,
tbar:tbar,
bbar:bbar

});
/**
* 渲染呈现Grid,Store初始化
*/
grid.render('UIgrid');
store.load({
params: { start: 0, limit: 10}
});
});

这是第一次加载全部数据!



这是Toolbar 下面的查询

var query=new Ext.Button({
text:'查询',
icon:'./Images/icons/search.gif',
listeners:{scope:this,
"click":function(){
//任务编号
task_no=Ext.getCmp("id_tx_organCode").getValue();

//任务执行人
task_person=Ext.getCmp("id_cb_src").getValue();

startDate=Ext.getCmp('id_startDate').getValue();

if(startDate==null||startDate=='')
{
Ext.Msg.alert('系统提示','请选择开始日期');
return;
}

//获取结束日期
endDate=Ext.getCmp('id_endDate').getValue();

if(endDate==null||endDate=='')
{
Ext.Msg.alert('系统提示','请选择结束日期');
return;
}


if(startDate>=endDate)
{
Ext.Msg.alert('系统提示','开始日期不得大于结束日期');
return;
}
url='QueryTask.aspx?task_no='+task_no+'&task_person='+task_person+'&beginDate='+startDate.format('Y-m-d')+'&endDate='+endDate.format('Y-m-d');
alert(url);
<!--下面两句我不知道怎么写的-->
store.proxy=new Ext.data.HttpProxy({url:url});
store.reload

}
}
});

后台能去除数据,怎么重新加载数据显示到GridPanel中呢
...全文
748 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
胡充 2012-02-27
  • 打赏
  • 举报
回复
storeX.on("beforeload",function(store,options){
Ext.apply(options.params, {
.......加载是时候的参数在这儿再写一遍
});
});
storeX:你的数据源名称
yangmeng518889 2011-10-26
  • 打赏
  • 举报
回复
希望对你有帮助
yangmeng518889 2011-10-26
  • 打赏
  • 举报
回复
ext.net的写法
<ext:GridPanel ID="gp_CollectAlarm" runat="server" AutoHeight="true" Border="false">
<Store>
<ext:Store runat="server" ID="st_CollectAlarm" OnRefreshData="BandWarehouseAreaInfo"
AutoLoad="true">
<Reader>
<ext:JsonReader IDProperty="ID">
<Fields>
<ext:RecordField Name="ID" />
<ext:RecordField Name="AlarmLv" />
<ext:RecordField Name="LocationId" />
<ext:RecordField Name="Temperature" />
<ext:RecordField Name="Humidity" />
<ext:RecordField Name="Pressure" />
<ext:RecordField Name="CollectTime" Type="Date" />
<ext:RecordField Name="WarehouseName" />
<ext:RecordField Name="WarehouseArea" />
<ext:RecordField Name="CompanyName" />
</Fields>
</ext:JsonReader>
</Reader>
<Proxy>
<ext:PageProxy />
</Proxy>
<BaseParams>
<ext:Parameter Name="start" Value="0" />
<ext:Parameter Name="limit" Value="20" />
</BaseParams>
</ext:Store>
</Store>
<TopBar>
<ext:Toolbar ID="Toolbar1" runat="server">
<Items>
<ext:Label ID="Label1" runat="server" Text="" Icon="ApplicationViewList" />
<ext:TextField ID="txtSelect" runat="server" Width="230" />
<ext:Button ID="Button7" runat="server" Text="查找" Icon="Find" StandOut="true">
<DirectEvents>
<Click>
<EventMask ShowMask="true" Msg="正在搜索..." />
</Click>
</DirectEvents>
<Listeners>
<Click Handler="#{gp_CollectAlarm}.reload();" />
</Listeners>
</ext:Button>
<ext:Button ID="Button1" runat="server" Text="条件查询" StandOut="true">
<Listeners>
<Click Handler="#{FormPanel1}.getForm().reset();#{Window1}.show();" />
</Listeners>
</ext:Button>
<ext:Button ID="BtnExport" runat="server" Text="导出" AutoPostBack="true" OnClick="ToExcel"
StandOut="true" Icon="PageExcel">
<Listeners>
<Click Fn="saveData" />
</Listeners>
</ext:Button>
</Items>
</ext:Toolbar>
</TopBar>
<ColumnModel>
<Columns>
<ext:RowNumbererColumn Width="20" />
<ext:Column Header="超限记录ID" Hidden="true" DataIndex="ID" />
<ext:Column Header="所属公司" Width="175" DataIndex="CompanyName" />
<ext:Column Header="所属仓库" Width="200" DataIndex="WarehouseName" />
<ext:Column Header="所在仓库区域" Width="120" DataIndex="WarehouseArea" />
<ext:Column Header="采集器编号" Width="80" DataIndex="LocationId" />
<ext:Column Header="温度" Width="60" DataIndex="Temperature" />
<ext:Column Header="湿度" Width="60" DataIndex="Humidity" />
<ext:Column Header="压差" Width="60" DataIndex="Pressure" />
<ext:DateColumn Header="采集时间" Width="130" DataIndex="CollectTime" Format="yyyy-MM-dd HH:mm:ss" />
<ext:Column DataIndex="AlarmLv" Header="报警级别">
<Renderer Fn="changes" />
</ext:Column>
</Columns>
</ColumnModel>
<LoadMask ShowMask="true" Msg="正在加载..." />
<SelectionModel>
<ext:CheckboxSelectionModel ID="CheckboxSelectionModel1" runat="server" />
</SelectionModel>
<BottomBar>
<ext:PagingToolbar ID="PagingToolBar1" StoreID="st_CollectAlarm" PageSize="20" runat="server" />
</BottomBar>
</ext:GridPanel>
sw245711601 2011-09-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 guowangsheng2011 的回复:]
JScript code


store.reload({
params:{
'ask_no':task_no,
'task_person':task_person,
'beginDate':startDate.format('Y-m-d'),
'endDate':endDate.format('Y-m-d'),
}
})
[/Quote]

我的第一次加载和后面的查询不是同一个方法的!
所以我要怎么设置查询方法 加载数据呢?
yangmeng518889 2011-09-19
  • 打赏
  • 举报
回复
GridPanel.reload();不晓得可以不,我在ext.net它是可以的
sw245711601 2011-09-19
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 madstone_l 的回复:]
引用 3 楼 sw245711601 的回复:

引用 2 楼 guowangsheng2011 的回复:
JScript code


store.reload({
params:{
'ask_no':task_no,
'task_person':task_person,
'beginDate':startDate.format('Y-m-d'),
'endDate':en……
[/Quote]

我的意思 是那个查询的URL 怎么写?
madStone_l 2011-09-19
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 sw245711601 的回复:]

引用 2 楼 guowangsheng2011 的回复:
JScript code


store.reload({
params:{
'ask_no':task_no,
'task_person':task_person,
'beginDate':startDate.format('Y-m-d'),
'endDate':endDate.format('Y-m-d'),
}
……
[/Quote]
LZ 的 store.proxy=new Ext.data.HttpProxy({url:url});写法不行,EXT应该不支持这样的。
一楼的是正确的方法,至于一直停留在加载提示界面,估计应该是你服务器返回JSON数据有问题,或者其他JS错误,可以通过 火狐 + Firebug 工具调试,就能直接看出错误提示。

火狐 + Firebug插件,个人觉得开发EXT必备工具
sw245711601 2011-09-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 guowangsheng2011 的回复:]
JScript code


store.reload({
params:{
'ask_no':task_no,
'task_person':task_person,
'beginDate':startDate.format('Y-m-d'),
'endDate':endDate.format('Y-m-d'),
}
})
[/Quote]

结果还是显示不出来。一直停在正在加载数据,请稍候的界面……

url='QueryTask.aspx?task_no='+task_no+'&task_person='+task_person+'&beginDate='+startDate.format('Y-m-d')+'&endDate='+endDate.format('Y-m-d');
alert(url);
<!--下面两句我不知道怎么写的-->
store.proxy=new Ext.data.HttpProxy({url:url});

那句proxy 我不知道写对了没 好像错了!
一品 2011-09-19
  • 打赏
  • 举报
回复

store.reload({
params:{
'ask_no':task_no,
'task_person':task_person,
'beginDate':startDate.format('Y-m-d'),
'endDate':endDate.format('Y-m-d'),
}
})
sw245711601 2011-09-19
  • 打赏
  • 举报
回复


来个大神帮帮我啊!!!

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧