function getformValue(){
var percentages = $("input[name='percentage']");
var conditions = document.getElementsByName("condition");
var ids = document.getElementsByName("scoringRuleId");
var scoreingRules = [];
for(var i=0; i<percentages.length;i++){
parameter = {};
var percentageI = $(percentages[i]).val();
var conditionI = $(conditions[i]).val();
var idI = $(ids[i]).val();
parameter.percentage = percentageI;
parameter.conditions = conditionI;
parameter.id = idI;
scoreingRules.push(parameter);
}
var val = JSON.stringify(scoreingRules);
document.getElementById("scoringRuleSettings").value= val;
}
此处percentage和condition和scoringRuleId是行中的列(也是下文ScoringRuleSettingDTO中的属性),有多行。
后台controller取值:
Gson gsonss = new GsonBuilder().create();
List<ScoringRuleSettingDTO> scoringRuleSettingDTOList =
(List<ScoringRuleSettingDTO>) gsonss.fromJson(
command.getScoringRuleSettings(), new TypeToken<List<ScoringRuleSettingDTO>>(){}.getType());
其中 command是和前台交互的obj,其中有属性为
private String scoringRuleSettings;
command.getScoringRuleSettings()就是前台取回来的数据,绑定成List<ScoringRuleSettingDTO>.
本文介绍了一种从前端收集表单数据并将其转换为JSON字符串的方法,然后在后端使用Gson库将该字符串解析为ScoringRuleSettingDTO对象列表的过程。这个过程涉及jQuery的选择器和事件处理,以及Java的泛型和JSON处理。
2966

被折叠的 条评论
为什么被折叠?



