0

好吧,所以我对 Spring 还很陌生,但我被要求解决一个错误。所以在我们的应用程序中,我们有一个基于 id 查询数据库的页面。但是,并非所有条目对于 id 都是唯一的。另一方面,id 和日期对确实定义了唯一条目。

所以这个页面需要一个id。如果只有一个与此 id 相关的条目,则一切正常。但是,如果有多个条目,则页面会显示与该 ID 相关的各种日期的单选按钮选择。我们使用类似的东西:

<form:radiobutton id="loadDate" path="loadDate" value="${date}" label="${date}" />

稍后在同一页面上,我们要显示该选项的数据。作为其中的一部分,我们显示该选择的日期:

<form:input id="aiLoadDate" path="loadDate" maxlength="22" size="22" class="readonly" readonly="true"/>

问题是,当这种情况发生时,变量(或bean?我还不太确定Spring ..)loadDate(一个字符串)最终成为相同的日期两次,用逗号分隔。我猜这里的问题是两条线共有的“path="loadDate"”。

我不想像 csv 那样将日期附加到已经存在的日期,而是希望它覆盖当前条目。有没有办法做到这一点?

4

1 回答 1

1

春天不是你的问题的直接原因。当 HTML 表单的元素被提交时,每个元素将在请求中显示为 name=value 对。如果表单中的两个或多个元素具有相同的名称(不是 id、name 属性),则这些元素在请求中显示为 name=value,value(每个元素一个值,名称重复)。

选项 1:停止使用输入作为显示元素。只需在跨度(或 div 或段落或其他任何内容)中显示日期。如果您想要输入框的外观(边框等),请使用 CSS 创建一个具有您想要的外观的类,并将该类附加到显示日期的跨度(或 div 或段落等)。

选项2:继续使用输入作为显示元素。提交表单时,禁用的输入元素不会添加到请求中。形式为:输入集禁用=“真”。

于 2013-09-11T18:28:47.363 回答