词条统计
浏览次数:9221 次
编辑次数:3次 历史版本
最近更新:2013/6/20
创建者:掷鸡蛋者

第一部分:概念

wojilu 模板引擎的设计理念是简单易用,不带脚本语言的特征。在大多数时候,工作良好。
但在少数时候,比如下拉列表中,简单的模板引擎语法就显得无能为力。

正确的做法是,把下拉框的实现看做是视图逻辑,挪到控制器中。正如我们前面做过的:

您也可以这样理解:下拉框是数据的集合,并且包括了当前选项是哪一个这样的信息,所以我们需要将其看做是带着视图逻辑的一个集合。

把这些带着视图逻辑的数据集合起来,最终呈现为页面的html,我们称之为“html控件”。
当然,它和 webform 中的控件是有区别的,不带事件,要轻量级很多。

下拉列表的语法是:
dropList( "控件名称", 数据集合, "名称=值", 选定的值 )
当然,你在视图模板中还要定义一个下拉列表的变量,便于服务端控件的填充:
#{控件名称}

a)控制器:所以上面的 dropList( "categoryId", Category.findAll(), "Name=Id", 0 ) 就表示:
用 Category.findAll() 的结果作为数据集合填充到下拉列表中,下拉列表各项显示的是数据的Name,值是数据的Id,当前选定的是0
b)视图:同时,记得在视图模板中下拉框的地方写上:#{categoryId}
c)服务器获取