【发布时间】:2018-02-19 03:35:50
【问题描述】:
我对挂毯很陌生, 我在使用它时遇到了几个问题,如何从具有相同名称的挂毯文本字段中获取值?
例如:
<t:form t:id="names">
<t:errors/>
<div class="input-box">
<t:textfield type="text" name="birthdate[Day]"/>
<t:textfield type="text" name="birthdate[Month]"/>
<t:textfield type="text" name="birthdate[Year]"/>
</div>
<div class="input-box">
<div class="col-md-12">
<input type="submit" name="proceed" class="btn" value="Proceed" />
</div>
</div>
</t:form>
我尝试用birthdate[Day] = 20,birthdate[Month] = 08,birthdate[Year] = 1992 填充它,然后像这样在后端调试它:
@Property
@Persist(PersistenceConstants.FLASH)
private List<String> birthdate;
Object onSuccess() {
logger.info("data birthdate: "+birthdate); // print null
logger.info("data birthdate toString: "+birthdate.toString()); // print null
logger.info("data birthdate 0: "+birthdate.get(0)); // print null
return null;
}
他们都只返回null..
如何解决?
提前谢谢你
【问题讨论】:
-
你为什么有一个 List
生日;而不是 3 个字段来捕获 3 个不同文本字段的值?或者你为什么不使用 DateField? -
DateField 不可自定义,我的应用程序使用另一个 3rd 方日期选择器.. 和大约 3 个字段,我不能这样做,因为我的前端开发人员一直要求我构建这样的输入(3 输入 1 名称)...这是使用挂毯的弊端吗?
-
当然你可以保持名称不变,但是你需要指定
t:id,它用于将值从Names.tml映射到Names.javaPOJO。 -
有一张地图..
<t:textfield type="text" name="birthdate[Day]"/>到private List<String> birthdate;。看到这个:stackoverflow.com/a/42370754/2647910 看看评论我认为他也遇到了困难 -
挂毯和弹簧混合在一起......我的回答中只使用了挂毯!