Spring中的动态表单

我正在尝试使用Spring表单创建一个动态表单。 基本上,表单获得了学习活动的标题,然后在它下面有一个按钮,上面写着“再添加一个学习活动”。 这使得用户可以再添加一个学习活动。 我希望他能够尽可能多地添加。

我之前没有尝试过,所以很明显我遇到了我想到的第一个解决方案的错误。 我真的有一种感觉做我所做的会产生错误,但只是开车回家我想做什么,这是代码:

 fields = 0; function addInput() { document.getElementById('text').innerHTML += "

"; }

 
Learning Activity 1



您不能在javascript中使用< form:input> ,因为它是在服务器端运行的jsp标记。

然而,关于HTML输入如何绑定到Spring命令对象中的字段并没有什么神奇之处; 它只是基于名称。 所以在你的javascript中,添加一个新的 (例如 – 显然你会增加索引)。

我用于更复杂控件的另一个选项是获取现有控件的HTML(使用Spring form:input标签创建)并克隆它,用增加的数字替换索引。 如果使用jQuery,这会变得更容易。

编辑添加:可能导致问题的一个问题:您将新输入框附加到外部div(“text”)的末尾,这意味着它不在表单标记内。 那不行。

是一个JSP标记吗? 如果是这样,那么客户端Javascript将节点添加到DOM将不起作用 – 因为服务器端JSP引擎没有解释它们。

您的Javascript需要使用原始HTML和DOM,例如添加元素。