我想使用Spring形式做一个动态的形式。基本上,表单会得到一个学习活动的标题,然后下面有一个按钮,上面写着“添加一个学习活动”。这使得用户可以添加一个学习活动。我希望他能够尽可能多地添加他喜欢的东西。春天的动态形式
我没有尝试过,所以很明显,我遇到了第一个解决方案的错误,我想到了。我真的有一种感觉,做什么我做将产生一个错误,但只是开车回家什么,我试图做的,下面的代码:
<script language="javascript">
fields = 0;
function addInput() {
document.getElementById('text').innerHTML += "<form:input path='activity[fields++].activity'/><br />";
}
<div id="text">
<form:form commandName="course">
Learning Activity 1
<form:input path="activity[0].activity"/>
<input type="button" value="add activity" onclick="addInput()"/>
<br/><br/>
<input type="submit"/>
</form:form>
<br/><br/>
</div>
我试过这样做,但生成的表单的值没有绑定到命令类。只有我明确在春天窗体中设置的那个被绑定,例如在上面的代码中:
– Jeune 2009-09-18 13:05:07“可能会导致问题的一个问题:新的输入框到你的外部div(“text”)的末尾,这意味着它不在form标签内,这是行不通的。“ 我已经解决了这个问题,我在表单标签内的另一个div里面添加了新的输入框,但是附加的输入框不会绑定。 – Jeune 2009-09-18 16:05:58
你能举一个你的附加输入框的例子吗?我已经使用这种方法来做到这一点,它确实有效。名为“activity [1] .activity”的输入框应绑定到活动列表中的第二个项目(假设它有一个“活动”字段)等。 – 2009-09-18 17:26:27