如何通过在Spring控制器中发布表单来获取动态值

时间:2013-10-01 14:16:00

标签: java javascript jquery spring spring-mvc

我正在动态创建一个表单,我需要发布它并获取SpringController中的值

    for(var i=0;i<datArray.length;i++){
        element[i] = document.createElement("input");
        element[i].setAttribute("type", "text");
        element[i].setAttribute("name", "text");
        element[i].setAttribute("placeholder",datArray[i]);
        element[i].setAttribute("id", datArray[i]+"id");
        var foo = document.getElementById("fooBar");        
        //Append the element in page (in span).
        foo.appendChild(element[i]);
}   

this is my dynamic form drawn in Select onChange.

关于Pic - 这是我在Select onChange中绘制的动态表单

在每个下拉列表中更改我正在动态生成不同的文本框。我需要发布动态文本框并在JAVA中的Controller Spring中获取值。 如何在控制器中动态发布值?

任何想法?

1 个答案:

答案 0 :(得分:3)

您是否总是发送相同的模型对象?我的意思是,你的表单元素是否总是具有相同的名称属性?

如果是,您可以创建一个pojo类,其中包含加工名称的属性并使用RequestAttribute注释。

如果不是,则无法使用旧的请求参数。

<强>更新 如果您不知道提交了哪些参数,请循环到所有参数:

    List<String> requestParameterNames = Collections.list((Enumeration<String>) request.getParameterNames());

for (String parameterName : requestParameterNames) {
    String attributeName = parameterName;
    String attributeValue = request.getParameter(parameterName);

    //DO YOUR STUFF
}
//DO YOUR STUFF