【发布时间】:2011-05-22 19:16:51
【问题描述】:
我正在寻找一种方法来语言独立地表达 HTML 应用程序的工作流程。如果用户在表单中填写某些值,则应显示另一个表单。 此外,如果填写了值,则应在此子表单中显示这些子表单的新部分。
我想表达 HTML 表单之间的关系、这些表单中的 HTML 元素以及这些元素的值。
基于数据库信息,如表字段和表关系,我通过Doctrine进行管理,生成ExtJS表单。
现在我必须在我的 ExtJS 表单中引入一些流逻辑,这样我就不会直接使用 ExtJS (JavaScript) 代码对应用程序流进行硬编码。
我想根据预定义的配置文件在运行时生成适当的 JavaScript 代码。
例如:
我有 X 个表格
FORM 1. (displayed on startup)
|
|-> FROM 1.1 (only display after values have been inserted into FORM 1.)
|
|-> FROM 1.2 (only display after values have been inserted into FROM 1.1)
|
FROM 2. (display when something inserted into FORM 1.)
|
|-> FROM 2.1 (layout and elements of this form depend upon what has been
inserted into FROM 1.)
....
此外,如果用户在输入字段中填写内容,我只想显示部分表单
FORM 1. (displayed on startup)
|
|-> LAYER 1. (only display/activate after field <count> of FROM 1.
| has been filled in)
|
|-> LAYER 2. (only display/activate after field <count> of LAYER 1.
| has been filled in)
|
....
然后我只想在用户填写表单元素的值时显示表单 通过预定义的条件
FORM 1 (displayed on startup)
|
|-> FROM 1.1 (only display if field <count> of FROM 1. is greater that 10
| count > 10)
|
|-> FROM 1.2 (if count < 10 display this form)
|
....
最后我想,根据用户在父表单中插入的值,为输入元素设置规则,以限制其输入范围(可能的值)
这是一个示例工作流程
是否已经有一种元语言来定义这样的关系?
你会用什么方法来实现这样的事情?
问候,
J.
【问题讨论】:
标签: javascript extjs workflow metalanguage