这学期一直在做一个管理系统,前台用到了ExtJs,现在开始总结这一学期的学习心得,首先我们从Ext.ux.form.SearchField开始讲,因为这个东西一直困扰我好长时间,直到项目结束前几天我才解决这个问题。
首先我们先附上Ext.ux.form.SearchField的源代码:
从源代码中我们看到我注视了一行:
这个参数是用于分页的,我实际的项目中,分页用到了2个参数,分别是start和limit,但是这里只有start,因此如果reload只传start会报错,而且我通过测试发现,reload方法不需要传递参数,他它自动会使用原来的分页参数start和limit。
看到这个搜索框,我们一般可能会想,这个搜索控件是如何给后台传递参数的呢?从源代码中我们看到有一行
当我们在搜索控件中输入查询条件,这个查询条件会赋值给query,查询条件就是通过这个参数名为query来传递的。我们在后台可以通过以下方式获取搜索条件中的文本:
得到搜索条件以后我们就可以使用这个搜索条件查询数据库了。
下面我附上前台的ExtJs中使用SearchField的代码。
首先定义工具栏,定义如下:
然后在grid中使用该工具栏:
搜索控件不一定非要放在toolbar上,这个可以根据个人需要设定。