我想做一个图书管理检索,有几个关于参数发送接收的问题,
采用MVC模式,视图有Gird和检索框,检索框的控制器注册了点击事件函数,当点击搜索时,就能取到的数据。
我的问题是
1.这些数据通过什么方式发送到服务器,要动态创建proxy吗?
2.接受到的结果应该有个监听函数,如何注册?
3.在这个注册函数里如何将结果绑定到现存的grid上?请各位亲帮忙解答。最好带例子~谢谢!!
采用MVC模式,视图有Gird和检索框,检索框的控制器注册了点击事件函数,当点击搜索时,就能取到的数据。
我的问题是
1.这些数据通过什么方式发送到服务器,要动态创建proxy吗?
2.接受到的结果应该有个监听函数,如何注册?
3.在这个注册函数里如何将结果绑定到现存的grid上?请各位亲帮忙解答。最好带例子~谢谢!!
例如: Ext.regModel('Entity',{
fields:[{},{}],
proxy:{
type:'ajax',
url:'.jsp',
reader:{root:'data'}
}
})然后在数据层引用他.new Extr.data.Store({
model:'Entity'
})2.至于监听,Extjs几乎所有带显示层的组件都可被监听,你只需要设置组件的listeners属性就可以了.
例如监听store组件信息new Extr.data.Store({
model:'Entity',
listeners:{
'load':function(){//监听数据装载事件 }
}
})3.我不是很理解你所说的注册函数具体指什么,不过如果你要将某一个函数运行结果绑定到某一个grid上(或许你希望这个函数的运行结果作为grid的某个属性值),你可以参考下我不久前提的一个贴,希望对撸主学习extjs有所帮助.
extjs 组件构造器参数传递问题
就是类似于ajax里的onreadystatechange函数,当从服务器接收到数据就会自动调这个函数,我就可以在这个函数内绑定数据到grid上了
Ext.Ajax.request({
url:'.jsp',
success:function(res){ //响应成功后回调的函数,res为请求回前台的数据对象
//在这里写逻辑把数据传到grid构造器里面就行了,由构造器去重新分配资源.
}
})
store.on('beforeload', function() {
this.baseParams = {
timeSection : Ext.getCmp('timeSection').getValue().trim(),
startTime : Ext.getCmp("startTime").getRawValue(),
endTime : Ext.getCmp("endTime").getRawValue(),
classId : comboxTree.getValue()
}});