我想知道是否有办法强制使用 struts 中的日期输入格式,例如 dd/MM/yyyy 。
日期写在文本字段中。我读到这是一个语言环境敏感的主题,但为了简单的格式更改而切换语言环境似乎太过分了。
我知道我可以addFieldError(fieldName, errorMessage)在我的 Action 类的方法内部调用,但对我来说,感觉应该考虑在 Action-validation.xml 文件中配置日期格式。我搜索了用属性文件配置它,但没有找到工作示例。
使用自定义StrutsTypeConverter,并addFieldError(fieldName, errorMessage)做到这一点的唯一途径?或者是否有其他版本的 struts 可以指定在文本字段中输入的日期格式?
更新:
我以为我已经足够清楚了,但有些答案却证明了这一点。
用例是:用户在文本字段中手动输入任意格式的日期,然后 struts2 验证日期格式是否与程序员设置的格式相对应,并相应地显示消息。
带有<s:date>标签的jQuery 日期选择器可以替代我想要实现的目标,但这不是我所要求的。此外,可以禁用 Javascript,使日期选择器无用,据我所知,jQuery 是一个 Javascript 库。
我的操作已实现ModelDriven,但无法在文本字段中强制提供日期格式,我确实使用了自己的验证器,但我将表单元素的映射更改为String操作类中的命名,然后使用验证器使用SimpleDateFormat从资源包中检索的格式将其转换为日期,然后再次格式化日期,以查看表示形式是否与文本字段中输入的表示形式相同。毕竟格式已经很清楚了。
如果还有其他建议我欢迎,这似乎是唯一的选择。
我觉得这个缺点至少很烦人。
| 归档时间: |
|
| 查看次数: |
1717 次 |
| 最近记录: |