0

我正在使用JQuery对话框来显示一个<form:form>以识别/选择要从查询中添加的特定记录。表中的每条记录都应包含一个按钮作为submit所述表单的触发器以添加所选记录。下面的代码说明了代码的结构:

<form:form action="POST" action="form_action" modelAttribute="form">
    <div><form:hidden path="selectedDate" />
         <!-- Other components relating to the parent record -->
    </div>
    <div>
        <!-- The detail of the parent -->
        <table>
            <thead>
                <th>Name</th>
                <th></th>
            </thead>
            <tbody>
                <c:forEach items="${items}" var="itr">
                    <tr>
                        <td>${itr.name}</td>
                        <td>
                            <input type="submit" value="Select" name="${itr.id}" />
                        </td>
                    </tr>
                </c:forEach>
            </tbody>
        </table>
    </div>
</form:form>

有没有办法获得一个 post 参数id来指示所选记录?

4

1 回答 1

0

您可以将提交按钮的 id 和名称设置为正确的 Spring MVC 输入名称,并使该值成为正确的选定 ID 值。像这样的东西:

<form:form action="POST" action="form_action" modelAttribute="form">
    <div><form:hidden path="selectedDate" />
         <!-- Other components relating to the parent record -->
    </div>
    <div>
        <!-- The detail of the parent -->
        <table>
            <thead>
                <th>Name</th>
                <th></th>
            </thead>
            <tbody>
                <c:forEach items="${items}" var="itr" varStat="itrStat">
                    <tr>
                        <td>${itr.name}</td>
                        <td>
                            <input type="submit" value="${itr.id}" name="form.items[${itrStat.index}]" id="form.items${itrStat.index}" />
                        </td>
                    </tr>
                </c:forEach>
            </tbody>
        </table>
    </div>
</form:form>

所有 Spring 关心的是,在 Form 中发布的名称与在 Form 标签和 Controller 中相应处理程序中定义的 Model Attribute 上的某些属性匹配。

于 2013-08-13T18:55:43.413 回答