微软下一步要推出自己的 MVC 系统(Kao,java 有什么,它就要搞什么),将不再支持传统的 PostBack ,也就是说不在支持传统的页面生成周期,也就意味着很多在 WebForms 下开发的服务器控件都不能再使用了,统统报销。如果你选择了 MVC 开发模型,可能不得不放弃控件开发。其实我认为正是微软的服务器控件开发才大大推动了 .Net 平台的普及,各种版本的"TreeView 和 GridView ” 都历历在目。
    利用这个周末做了个查询表达式生成器,我实在无法忍受我现在项目中的查询方式,每次改变查询条件都要 PostBack 页面(又是PostBack),即使你不点击查询按钮。
    先来个图片:

一个查询表达式生成器控件

一个查询表达式生成器控件

一个查询表达式生成器控件
  实现无刷洗的改变搜索条件,可以通过 Ajax  在不同条件下给操作符和范围输入框赋予不同的值,但这样不利与控件的封装,关键是 Ajax 增加了页面与服务器和数据库的交互,降低系统性能。
  查询条件生成器控件,虽然也要从后台读取数据,但数据不会时时改变。所以我在页面 load 阶段将所有要用到的数据发向页面,通过 javascript 定义一个链表数据结构将数据保存,当改变查询条件时也不需要从后台重新获取数据。这是这个控件开发的关键。
一下是控件在 render 时期让页面接受服务器数据的代码:
        }

 剩下的事情就是如何让控件响应用户的事件,这都是 javascript 的事情了。
一个查询表达式生成器控件    initialize:function()
,

先说到这里,如果需要代码请通过 msn 与我联系。还有看帖要回。

相关文章: