fmt 标签的问题
我目前正在开发一个 spring 项目,我必须在 JSP 中使用 fmt 标签。事实上,fmt 标签对我来说工作得很好,并且它从 messages.properties
文件中读取正确的值。
例如:
<fmt:message key="General.Settings"/>
在 .properties
文件中:
General.Settings=Settings
它读取得非常完美。
现在,将 fmt 标记放入另一个 JSTL 标记内时存在问题。
例如:
<input name="commit" value= <fmt:message key="AllMessages.PostThisMessage"/>
type="submit" onclick="return isEmpty();" />
在 .properties
文件内:
AllMessages.PostThisMessage=Post this message
但它仅显示单词“Post”而不是“Post this message”,
并且与其他 JSTL 标记内的所有其他 fmt 标记相同。
有什么建议吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
不要像这样嵌套标签,这会造成混乱并且容易出错。最好做这样的事情:
如果您确实使用了这种语法:
那么它能起作用真是一个奇迹,因为这会生成无效的 HTML。
Don't nest your tags like that, it's confusing and error-prone. Better to do this sort of thing:
If you really were using this syntax:
Then it's a marvel it worked at all, since that would generate invalid HTML.
您忘记了 value 参数的引号:
"类型 =“提交” onclick =“返回 isEmpty();” />
但正如已经提到的,嵌套标签更难阅读。
You forgot the quotes for the value parameter:
<input name="commit" value="<fmt:message key="AllMessages.PostThisMessage"/>" type="submit" onclick="return isEmpty();" />
But as already mentioned, nested tags are harder to read.
不确定是否是因为我的 JST 库版本问题,但我无法直接在
上设置var
。我必须创建 ac:set 才能使其工作:我是 JSP 新手,所以我希望这很好。 ;-)
Not sure if it's because of my version of the JST Library, but I couldn't set the
var
directly on the<fmt:message />
. I had to create a c:set for it to work:I'm new to JSP so I hope that's good. ;-)
在 value 属性周围添加单引号就可以了。
Adding single quotes around the value attribute will do the trick.
<input name="commit" value='<fmt:message key="AllMessages.PostThisMessage"/>'
type="submit" onclick="return isEmpty();" />