来源: 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(44)-工作流设计-设计表单 – ymnets – 博客园
设计表单是比较复杂的一步,完成一个表单的设计其实很漫长,主要分为四步。
开始之前先说说表的结构。
其实表Flow_Form与Flow_FormContent设计是有一个缺陷的。我总共是设置最高26个字段从A~Z如果超过26个字段的表单是属于硬编码的。但是我认为26个字段已经足够
因为这里我是单表模式比起表关联无限字段理论上性能会更加快,特别是当数据库申请带到千万级数据的时候(你自己可以设计更加灵活的表单管理)
Flow_Form的A~Z对应的是Flow_FlowAttr表中的数据,
Flow_FormContent表中的数据就是用户对表单的申请内容。同样从A~Z对应。这个表设计也有缺陷,我把内容全部设置为 varchar(2048)字段太大,可以根据自己的扩展来确定内容是最佳的方式,比如A-F是大字段,G-L设置的是中级长度的字段,M-O是数字的字 段等等
准备开始
1.新建控制器FormController(用代码生成器即可)
新建视图Create.cshtml,这里我设计了一个手风琴,设计表单的同时设计字段
把代码生成器生成的Form表单的的Create代码放到
第一步:设计表单里面
第二步添加字段,添加字段是一个DropDownList+easyui-combogrid来组成。
具体代码实现如下
<span class="pln"> </span><span class="lit">@model</span><span class="pln"> </span><span class="typ">App</span><span class="pun">.</span><span class="typ">Models</span><span class="pun">.</span><span class="typ">Flow</span><span class="pun">.</span><span class="typ">Flow_FormModel</span><span class="pln"> </span><span class="lit">@using</span><span class="pln"> </span><span class="typ">App</span><span class="pun">.</span><span class="typ">Common</span><span class="pun">;</span><span class="pln"> </span><span class="lit">@using</span><span class="pln"> </span><span class="typ">App</span><span class="pun">.</span><span class="typ">Models</span><span class="pun">.</span><span class="typ">Flow</span><span class="pun">;</span><span class="pln"> </span><span class="lit">@using</span><span class="pln"> </span><span class="typ">App</span><span class="pun">.</span><span class="typ">Admin</span><span class="pun">;</span><span class="pln"> </span><span class="lit">@using</span><span class="pln"> </span><span class="typ">App</span><span class="pun">.</span><span class="typ">Models</span><span class="pun">.</span><span class="typ">Sys</span><span class="pun">;</span><span class="pln"> </span><span class="pun">@{</span><span class="pln"> </span><span class="typ">ViewBag</span><span class="pun">.</span><span class="typ">Title</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="str">"创建"</span><span class="pun">;</span><span class="pln"> </span><span class="typ">Layout</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="str">"~/Views/Shared/_Index_LayoutEdit.cshtml"</span><span class="pun">;</span><span class="pln"> </span><span class="typ">List</span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">permModel</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> perm </span><span class="pun">=</span><span class="pln"> </span><span class="pun">(</span><span class="typ">List</span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">permModel</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;)</span><span class="typ">ViewBag</span><span class="pun">.</span><span class="typ">Perm</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">perm </span><span class="pun">==</span><span class="pln"> </span><span class="kwd">null</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> perm </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="typ">List</span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">permModel</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;();</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">script type</span><span class="pun">=</span><span class="str">"text/javascript"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> $</span><span class="pun">(</span><span class="kwd">function</span><span class="pln"> </span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> jQuery</span><span class="pun">(</span><span class="str">"#accordion"</span><span class="pun">).</span><span class="pln">accordion</span><span class="pun">({</span><span class="pln"> </span><span class="com">//初始化accordion</span><span class="pln"> fillSpace</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">true</span><span class="pun">,</span><span class="pln"> fit</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">false</span><span class="pun">,</span><span class="pln"> border</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">false</span><span class="pun">,</span><span class="pln"> animate</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">false</span><span class="pln"> </span><span class="pun">});</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"#btnSave"</span><span class="pun">).</span><span class="pln">click</span><span class="pun">(</span><span class="kwd">function</span><span class="pln"> </span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$</span><span class="pun">(</span><span class="str">"form"</span><span class="pun">).</span><span class="pln">valid</span><span class="pun">())</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> $</span><span class="pun">.</span><span class="pln">ajax</span><span class="pun">({</span><span class="pln"> url</span><span class="pun">:</span><span class="pln"> </span><span class="str">"@Url.Action("</span><span class="typ">Create</span><span class="str">")"</span><span class="pun">,</span><span class="pln"> type</span><span class="pun">:</span><span class="pln"> </span><span class="str">"Post"</span><span class="pun">,</span><span class="pln"> data</span><span class="pun">:</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"form"</span><span class="pun">).</span><span class="pln">serialize</span><span class="pun">(),</span><span class="pln"> dataType</span><span class="pun">:</span><span class="pln"> </span><span class="str">"json"</span><span class="pun">,</span><span class="pln"> success</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">function</span><span class="pln"> </span><span class="pun">(</span><span class="pln">data</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">data</span><span class="pun">.</span><span class="pln">type </span><span class="pun">==</span><span class="pln"> </span><span class="lit">1</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> window</span><span class="pun">.</span><span class="pln">parent</span><span class="pun">.</span><span class="pln">frameReturnByMes</span><span class="pun">(</span><span class="pln">data</span><span class="pun">.</span><span class="pln">message</span><span class="pun">);</span><span class="pln"> window</span><span class="pun">.</span><span class="pln">parent</span><span class="pun">.</span><span class="pln">frameReturnByReload</span><span class="pun">(</span><span class="kwd">true</span><span class="pun">);</span><span class="pln"> window</span><span class="pun">.</span><span class="pln">parent</span><span class="pun">.</span><span class="pln">frameReturnByClose</span><span class="pun">()</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">else</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> window</span><span class="pun">.</span><span class="pln">parent</span><span class="pun">.</span><span class="pln">frameReturnByMes</span><span class="pun">(</span><span class="pln">data</span><span class="pun">.</span><span class="pln">message</span><span class="pun">);</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="pun">});</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="kwd">false</span><span class="pun">;</span><span class="pln"> </span><span class="pun">});</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"#btnReturn"</span><span class="pun">).</span><span class="pln">click</span><span class="pun">(</span><span class="kwd">function</span><span class="pln"> </span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> window</span><span class="pun">.</span><span class="pln">parent</span><span class="pun">.</span><span class="pln">frameReturnByClose</span><span class="pun">();</span><span class="pln"> </span><span class="pun">});</span><span class="pln"> </span><span class="com">//改变字段列表</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"#TypeName"</span><span class="pun">).</span><span class="pln">change</span><span class="pun">(</span><span class="kwd">function</span><span class="pln"> </span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> $</span><span class="pun">(</span><span class="str">'#attrVal'</span><span class="pun">).</span><span class="pln">val</span><span class="pun">(</span><span class="str">""</span><span class="pun">);</span><span class="pln"> $</span><span class="pun">(</span><span class="str">'#formAttrComboGrid'</span><span class="pun">).</span><span class="pln">combogrid</span><span class="pun">(</span><span class="str">'setValue'</span><span class="pun">,</span><span class="pln"> </span><span class="str">''</span><span class="pun">).</span><span class="pln">combogrid</span><span class="pun">(</span><span class="str">'clear'</span><span class="pun">);</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"#formAttrComboGrid"</span><span class="pun">).</span><span class="pln">combogrid</span><span class="pun">(</span><span class="str">'grid'</span><span class="pun">).</span><span class="pln">datagrid</span><span class="pun">(</span><span class="str">"load"</span><span class="pun">,</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> queryStr</span><span class="pun">:</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"#TypeName"</span><span class="pun">).</span><span class="pln">val</span><span class="pun">()</span><span class="pln"> </span><span class="pun">});</span><span class="pln"> </span><span class="pun">});</span><span class="pln"> </span><span class="pun">});</span><span class="pln"> </span><span class="com">//添加一个字段到表单</span><span class="pln"> </span><span class="kwd">function</span><span class="pln"> </span><span class="typ">AddAttr</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="kwd">var</span><span class="pln"> currentValue</span><span class="pun">=</span><span class="pln"> $</span><span class="pun">(</span><span class="str">'#attrVal'</span><span class="pun">).</span><span class="pln">val</span><span class="pun">();</span><span class="pln"> </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">currentValue </span><span class="pun">==</span><span class="pln"> </span><span class="str">""</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> $</span><span class="pun">.</span><span class="pln">messageBox5s</span><span class="pun">(</span><span class="str">'提示'</span><span class="pun">,</span><span class="pln"> </span><span class="str">"请选择要添加的字段!"</span><span class="pun">);</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">var</span><span class="pln"> charNo </span><span class="pun">=</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"#AttrList tr"</span><span class="pun">).</span><span class="pln">size</span><span class="pun">()+</span><span class="lit">1</span><span class="pun">;</span><span class="com">//第几个字符</span><span class="pln"> </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">charNo </span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="lit">26</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> $</span><span class="pun">.</span><span class="pln">messageBox5s</span><span class="pun">(</span><span class="str">'提示'</span><span class="pun">,</span><span class="pln"> </span><span class="str">"目前设计最高26个字段!"</span><span class="pun">);</span><span class="pln"> </span><span class="kwd">return</span><span class="pun">;</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">var</span><span class="pln"> b </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">false</span><span class="pun">;</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"#AttrList input[type='hidden']"</span><span class="pun">).</span><span class="pln">each</span><span class="pun">(</span><span class="kwd">function</span><span class="pln"> </span><span class="pun">(</span><span class="pln">i</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="com">//判断是否有重复的项目</span><span class="pln"> </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">).</span><span class="pln">val</span><span class="pun">()</span><span class="pln"> </span><span class="pun">==</span><span class="pln"> currentValue</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> b </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">true</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">return</span><span class="pun">;</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="pun">});</span><span class="pln"> </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">b</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> $</span><span class="pun">.</span><span class="pln">messageBox5s</span><span class="pun">(</span><span class="str">'提示'</span><span class="pun">,</span><span class="pln"> </span><span class="str">"已经有重复的项目了!"</span><span class="pun">);</span><span class="pln"> </span><span class="kwd">return</span><span class="pun">;</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">var</span><span class="pln"> grid </span><span class="pun">=</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"#formAttrComboGrid"</span><span class="pun">).</span><span class="pln">combogrid</span><span class="pun">(</span><span class="str">"grid"</span><span class="pun">);</span><span class="com">//获取表格对象</span><span class="pln"> </span><span class="kwd">var</span><span class="pln"> row </span><span class="pun">=</span><span class="pln"> grid</span><span class="pun">.</span><span class="pln">datagrid</span><span class="pun">(</span><span class="str">'getSelected'</span><span class="pun">);</span><span class="com">//获取行数据</span><span class="pln"> </span><span class="kwd">var</span><span class="pln"> currentChar </span><span class="pun">=</span><span class="pln"> </span><span class="str">"Attr"</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> getChar</span><span class="pun">(</span><span class="pln">charNo</span><span class="pun">);</span><span class="com">//获取当前的字母</span><span class="pln"> </span><span class="kwd">var</span><span class="pln"> example </span><span class="pun">=</span><span class="pln"> getExample</span><span class="pun">(</span><span class="pln">row</span><span class="pun">.</span><span class="typ">AttrType</span><span class="pun">);</span><span class="pln"> </span><span class="com">//添加到候选区</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"#AttrList"</span><span class="pun">).</span><span class="pln">append</span><span class="pun">(</span><span class="str">"<tr id='tr"</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> currentChar </span><span class="pun">+</span><span class="pln"> </span><span class="str">"'><td style='text-align:right'>"</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> row</span><span class="pun">.</span><span class="typ">Title</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> </span><span class="str">":</td>"</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> </span><span class="str">"<td>"</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> example </span><span class="pun">+</span><span class="pln"> </span><span class="str">"<input id='"</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> currentChar </span><span class="pun">+</span><span class="pln"> </span><span class="str">"' name='"</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> currentChar </span><span class="pun">+</span><span class="pln"> </span><span class="str">"' type='hidden' value='"</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> currentValue </span><span class="pun">+</span><span class="pln"> </span><span class="str">"' /></td><td><a href=\"javascript:deleteCurrentTR('tr"</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> currentChar </span><span class="pun">+</span><span class="pln"> </span><span class="str">"');\">[删除]</a></td></tr>"</span><span class="pun">);</span><span class="pln"> </span><span class="com">//设置combogrid为空</span><span class="pln"> $</span><span class="pun">(</span><span class="str">'#formAttrComboGrid'</span><span class="pun">).</span><span class="pln">combogrid</span><span class="pun">(</span><span class="str">'setValue'</span><span class="pun">,</span><span class="pln"> </span><span class="str">''</span><span class="pun">);</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">function</span><span class="pln"> deleteCurrentTR</span><span class="pun">(</span><span class="pln">c</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> $</span><span class="pun">.</span><span class="pln">messager</span><span class="pun">.</span><span class="pln">confirm</span><span class="pun">(</span><span class="str">'提示'</span><span class="pun">,</span><span class="pln"> </span><span class="str">'删除字段吗?'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pln"> </span><span class="pun">(</span><span class="pln">r</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">r</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"#"</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> c</span><span class="pun">).</span><span class="pln">remove</span><span class="pun">();</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="pun">});</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">function</span><span class="pln"> getExample</span><span class="pun">(</span><span class="pln">v</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="kwd">switch</span><span class="pln"> </span><span class="pun">(</span><span class="pln">v</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="str">"文本"</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"<input type='text' />"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="str">"多行文本"</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"<textarea></textarea>"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="str">"数字"</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"<input type='text' />"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="str">"日期"</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"<input type='text' />"</span><span class="pun">;</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">function</span><span class="pln"> getChar</span><span class="pun">(</span><span class="pln">i</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="kwd">switch</span><span class="pln"> </span><span class="pun">(</span><span class="pln">i</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">1</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"A"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">2</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"B"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">3</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"C"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">4</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"D"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">5</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"E"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">6</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"F"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">7</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"G"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">8</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"H"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">9</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"I"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">10</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"J"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">11</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"K"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">12</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"L"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">13</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"M"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">14</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"N"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">15</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"O"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">16</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"P"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">17</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"Q"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">18</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"R"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">19</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"S"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">20</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"T"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">21</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"U"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">22</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"V"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">23</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"W"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">24</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"S"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">25</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"Y"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">case</span><span class="pln"> </span><span class="lit">26</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"Z"</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="kwd">default</span><span class="pun">:</span><span class="pln"> </span><span class="kwd">break</span><span class="pun">;</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/script> <div class="mvctool bgb"> @Html.ToolButton("btnSave", "icon-save", "保存", perm, "Save", true) @Html.ToolButton("btnReturn", "icon-return", "返回", false) </</span><span class="pln">div</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="lit">@using</span><span class="pln"> </span><span class="pun">(</span><span class="typ">Html</span><span class="pun">.</span><span class="typ">BeginForm</span><span class="pun">())</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">div id</span><span class="pun">=</span><span class="str">"accordion"</span><span class="pln"> </span><span class="kwd">class</span><span class="pun">=</span><span class="str">"easyui-accordion"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">div title</span><span class="pun">=</span><span class="str">"第一步:设计表单"</span><span class="pln"> style</span><span class="pun">=</span><span class="str">"overflow: auto; padding: 10px;"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="lit">@Html</span><span class="pun">.</span><span class="typ">HiddenFor</span><span class="pun">(</span><span class="pln">model </span><span class="pun">=&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> model</span><span class="pun">.</span><span class="typ">Id</span><span class="pun">)</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">table </span><span class="kwd">class</span><span class="pun">=</span><span class="str">"fromEditTable setTextWidth300"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">tbody</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">tr</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td style</span><span class="pun">=</span><span class="str">"width: 100px; text-align: right;"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="lit">@Html</span><span class="pun">.</span><span class="typ">LabelFor</span><span class="pun">(</span><span class="pln">model </span><span class="pun">=&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> model</span><span class="pun">.</span><span class="typ">Name</span><span class="pun">):</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/td> <td style="width: 310px"> @Html.EditorFor(model => model.Name) </</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="lit">@Html</span><span class="pun">.</span><span class="typ">ValidationMessageFor</span><span class="pun">(</span><span class="pln">model </span><span class="pun">=&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> model</span><span class="pun">.</span><span class="typ">Name</span><span class="pun">)&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/td> </</span><span class="pln">tr</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">tr</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td style</span><span class="pun">=</span><span class="str">"width: 100px; text-align: right;"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="lit">@Html</span><span class="pun">.</span><span class="typ">LabelFor</span><span class="pun">(</span><span class="pln">model </span><span class="pun">=&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> model</span><span class="pun">.</span><span class="typ">Remark</span><span class="pun">):</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/td> <td style="width: 310px"> @Html.TextAreaFor(model => model.Remark, 5, 80, new { }) </</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="lit">@Html</span><span class="pun">.</span><span class="typ">ValidationMessageFor</span><span class="pun">(</span><span class="pln">model </span><span class="pun">=&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> model</span><span class="pun">.</span><span class="typ">Remark</span><span class="pun">)&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/td> </</span><span class="pln">tr</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">tr</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td style</span><span class="pun">=</span><span class="str">"width: 100px; text-align: right;"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="lit">@Html</span><span class="pun">.</span><span class="typ">LabelFor</span><span class="pun">(</span><span class="pln">model </span><span class="pun">=&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> model</span><span class="pun">.</span><span class="typ">UsingDep</span><span class="pun">):</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/td> <td style="width: 310px"> @Html.EditorFor(model => model.UsingDep) </</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="lit">@Html</span><span class="pun">.</span><span class="typ">ValidationMessageFor</span><span class="pun">(</span><span class="pln">model </span><span class="pun">=&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> model</span><span class="pun">.</span><span class="typ">UsingDep</span><span class="pun">)&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/td> </</span><span class="pln">tr</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">tr</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td style</span><span class="pun">=</span><span class="str">"width: 100px; text-align: right;"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="lit">@Html</span><span class="pun">.</span><span class="typ">LabelFor</span><span class="pun">(</span><span class="pln">model </span><span class="pun">=&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> model</span><span class="pun">.</span><span class="typ">TypeId</span><span class="pun">):</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/td> <td style="width: 310px"> @Html.DropDownListFor(model => model.TypeId, ViewBag.FlowType as SelectList) </</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="lit">@Html</span><span class="pun">.</span><span class="typ">ValidationMessageFor</span><span class="pun">(</span><span class="pln">model </span><span class="pun">=&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> model</span><span class="pun">.</span><span class="typ">TypeId</span><span class="pun">)&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/td> </</span><span class="pln">tr</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">tr</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td style</span><span class="pun">=</span><span class="str">"width: 100px; text-align: right;"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="lit">@Html</span><span class="pun">.</span><span class="typ">LabelFor</span><span class="pun">(</span><span class="pln">model </span><span class="pun">=&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> model</span><span class="pun">.</span><span class="typ">State</span><span class="pun">):</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/td> <td style="width: 310px"> @Html.CheckBoxFor(model => model.State, new { @checked = true }) </</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="lit">@Html</span><span class="pun">.</span><span class="typ">ValidationMessageFor</span><span class="pun">(</span><span class="pln">model </span><span class="pun">=&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> model</span><span class="pun">.</span><span class="typ">State</span><span class="pun">)&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/td> </</span><span class="pln">tr</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">tr</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">div style</span><span class="pun">=</span><span class="str">"float: right"</span><span class="pln"> </span><span class="kwd">class</span><span class="pun">=</span><span class="str">"pic_204"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/div> </</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td colspan</span><span class="pun">=</span><span class="str">"2"</span><span class="pln"> </span><span class="kwd">class</span><span class="pun">=</span><span class="str">"gray"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;注:设计好表单和字段才能组成一个完整的表单,设计好表单后才能设计步骤&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/td> </</span><span class="pln">tr</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/tbody> </</span><span class="pln">table</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/div> <div title="第二步:添加字段" style="overflow: auto;"> <table class="fromEditTable setTextWidth300 bgb"> <tr> <td style="width:40px; text-align: right;">类别: </</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td style</span><span class="pun">=</span><span class="str">"width: 110px;"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="lit">@Html</span><span class="pun">.</span><span class="typ">DropDownListFor</span><span class="pun">(</span><span class="pln">model </span><span class="pun">=&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> model</span><span class="pun">.</span><span class="typ">TypeName</span><span class="pun">,</span><span class="pln"> </span><span class="typ">ViewBag</span><span class="pun">.</span><span class="typ">FlowType</span><span class="pln"> </span><span class="kwd">as</span><span class="pln"> </span><span class="typ">SelectList</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="lit">@style</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="str">"width:100px;"</span><span class="pln"> </span><span class="pun">})</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/td> <td style="width:40px; text-align: right;">字段: </</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td style</span><span class="pun">=</span><span class="str">"width: 210px"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">input id</span><span class="pun">=</span><span class="str">"attrVal"</span><span class="pln"> name</span><span class="pun">=</span><span class="str">"attrVal"</span><span class="pln"> type</span><span class="pun">=</span><span class="str">"hidden"</span><span class="pln"> </span><span class="pun">/&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="kwd">select</span><span class="pln"> </span><span class="kwd">class</span><span class="pun">=</span><span class="str">"easyui-combogrid"</span><span class="pln"> style</span><span class="pun">=</span><span class="str">"width:200px"</span><span class="pln"> id</span><span class="pun">=</span><span class="str">"formAttrComboGrid"</span><span class="pln"> data</span><span class="pun">-</span><span class="pln">options</span><span class="pun">=</span><span class="str">" panelWidth: 470, idField: 'Id', textField: 'Title', rownumbers: true,//行号 url: '@Url.Action("</span><span class="typ">GetFormAttrList</span><span class="str">")?page=1&sort=Id&rows=1000&order=desc', page:1, columns: [[ { field: 'Id', title: 'ID', width: 80, hidden: true }, { field: 'Title', title: '字段标题', width: 80, sortable: true }, { field: 'Name', title: '英文名称', width: 80, sortable: true }, { field: 'AttrType', title: '类型', width: 80, sortable: true }, { field: 'CheckJS', title: '校验脚本', width:50, sortable: true }, {field: 'CreateTime', title: '创建时间', width: 80, sortable: true } ]], onClickRow: function (index, data) { var value = $('#formAttrComboGrid').combogrid('getValue'); $('#attrVal').val(value); }, onLoadSuccess:function (data) { }, fitColumns: true "</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/select> </</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">a href</span><span class="pun">=</span><span class="str">"javascript:AddAttr();"</span><span class="pln"> </span><span class="kwd">class</span><span class="pun">=</span><span class="str">"easyui-linkbutton"</span><span class="pln"> data</span><span class="pun">-</span><span class="pln">options</span><span class="pun">=</span><span class="str">"iconCls:'icon-add'"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;添加&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/a> </</span><span class="pln">td</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/tr> </</span><span class="pln">table</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="pln">table id</span><span class="pun">=</span><span class="str">"AttrList"</span><span class="pln"> </span><span class="kwd">class</span><span class="pun">=</span><span class="str">"fromEditTable setTextWidth300"</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="str">/table> </</span><span class="pln">div</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;/</span><span class="pln">div</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span> |
FormController核心代码
<span class="pln"> </span><span class="pun">[</span><span class="typ">HttpPost</span><span class="pun">]</span><span class="pln"> </span><span class="kwd">public</span><span class="pln"> </span><span class="typ">JsonResult</span><span class="pln"> </span><span class="typ">GetFormAttrList</span><span class="pun">(</span><span class="typ">GridPager</span><span class="pln"> pager</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">string</span><span class="pln"> queryStr</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="typ">List</span><span class="pun">&</span><span class="pln">lt</span><span class="pun">;</span><span class="typ">Flow_FormAttrModel</span><span class="pun">&</span><span class="pln">gt</span><span class="pun">;</span><span class="pln"> list </span><span class="pun">=</span><span class="pln"> attrBLL</span><span class="pun">.</span><span class="typ">GetList</span><span class="pun">(</span><span class="kwd">ref</span><span class="pln"> pager</span><span class="pun">,</span><span class="pln"> queryStr</span><span class="pun">);</span><span class="pln"> </span><span class="kwd">var</span><span class="pln"> json </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> total </span><span class="pun">=</span><span class="pln"> pager</span><span class="pun">.</span><span class="pln">totalRows</span><span class="pun">,</span><span class="pln"> rows </span><span class="pun">=</span><span class="pln"> </span><span class="pun">(</span><span class="kwd">from</span><span class="pln"> r </span><span class="kwd">in</span><span class="pln"> list </span><span class="kwd">select</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="typ">Flow_FormAttrModel</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="typ">Id</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> r</span><span class="pun">.</span><span class="typ">Id</span><span class="pun">,</span><span class="pln"> </span><span class="typ">Title</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> r</span><span class="pun">.</span><span class="typ">Title</span><span class="pun">,</span><span class="pln"> </span><span class="typ">Name</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> r</span><span class="pun">.</span><span class="typ">Name</span><span class="pun">,</span><span class="pln"> </span><span class="typ">AttrType</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> r</span><span class="pun">.</span><span class="typ">AttrType</span><span class="pun">,</span><span class="pln"> </span><span class="typ">CheckJS</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> r</span><span class="pun">.</span><span class="typ">CheckJS</span><span class="pun">,</span><span class="pln"> </span><span class="typ">TypeId</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> r</span><span class="pun">.</span><span class="typ">TypeId</span><span class="pun">,</span><span class="pln"> </span><span class="typ">CreateTime</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> r</span><span class="pun">.</span><span class="typ">CreateTime</span><span class="pln"> </span><span class="pun">}).</span><span class="typ">ToArray</span><span class="pun">()</span><span class="pln"> </span><span class="pun">};</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="typ">Json</span><span class="pun">(</span><span class="pln">json</span><span class="pun">);</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span> |
代码分析:
主要难点在切换类表需要重新加载combogrid,然后根据选择的字段组成表单。
利用前端技术控制,进行字段类表的筛选获得字段。再添加字段的ID到隐藏的DIV,最后序列化整张表单保存。
整个工作流中,前端的技术代码量远超后台代码。所以关注点都在前端代码中
出处:http://ymnets.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。