环境描述:就像你一般在论坛上发表文章,可能带附件,附件的数量是你手动添加删除的!!
/************************************************************************
*** 添加审批表单模板
************************************************************************/
// 增长的索引
var itemIndex = 1000;
// 数量
var counter = 0;
// 模板
var itemTemplate = \'\';
itemTemplate += \'<div id=\"item_#itemIndex#\" style=\"width: 100%;\">\';
itemTemplate += \' <span style=\"width: 80px\">表单字段</span>\';
itemTemplate += \' <input type=\"text\" name=\"flowFormFieldCfgElement(#itemIndex#).name\" style=\"width: 205px;\"/>\';
itemTemplate += \' 值类型 <select name=\"flowFormFieldCfgElement(#itemIndex#).valueType\">\';
itemTemplate += \' <option value=\"java.lang.String\" selected>字符串</option>\';
itemTemplate += \' <option value=\"java.lang.Integer\">数字(整数)</option>\';
itemTemplate += \' <option value=\"java.util.Date\">日期(yyyy-MM-dd)</option>\';
itemTemplate += \' </select>\';
itemTemplate += \' <input type=\"button\" class=\"btnDelItem\" onclick=\"delItem(#itemIndex#)\" value=\"删除\">\';
itemTemplate += \'</div>\';
// 添加
function addItem() {
var s = itemTemplate.replace(/#itemIndex#/g, itemIndex);
$(\"#divFormFields\").append(s);
itemIndex ++;
counter ++;
}
// 删除
function delItem(index) {
$(\"#item_\" + index).remove();
counter = counter - 1;
}
public class FlowFormConfigActionForm extends ActionForm {
private int id;
private String name;
private String processName;
private String formFillTemplatePath;
private String formShowTemplatePath;
private Map<String, FlowformFieldConfig> flowFormFieldCfgMap = new TreeMap<String, FlowformFieldConfig>();
/** 表单复杂属性 */
public FlowformFieldConfig getFlowFormFieldCfgElement(String key){
if(!flowFormFieldCfgMap.containsKey(key)){
flowFormFieldCfgMap.put(key, new FlowformFieldConfig());
}
return flowFormFieldCfgMap.get(key);
}
*U*****
public class FlowformFieldConfig {
private int id;
private String name;
private Class<?> valueType;
主要要原理是:struts1.*在jsp显示的时候,会先从formbean里通过get***方法拿出属性的值!!
flowFormFieldCfgElement(#itemIndex#).name 这是核心,如果flowFormFieldCfgElement(#itemIndex#)为空的话,就会出错,所以在/** 表单复杂属性 */
public FlowformFieldConfig getFlowFormFieldCfgElement(String key){
if(!flowFormFieldCfgMap.containsKey(key)){
flowFormFieldCfgMap.put(key, new FlowformFieldConfig());
}
return flowFormFieldCfgMap.get(key);
}
做了判断!!
如果还有不懂的人可以给我留言!!
本文地址:https://www.stayed.cn/item/15210
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我