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>.