Struts 2 插件 <s:submit> 在标签中呈现 html 表达式
Struts 2 plugin <s:submit> render html expression in label
我正在尝试使用 HTML 修饰符标签呈现提交按钮
在 ApplicationResources.properties 文件中
label.ok=<u>O</u>K
那么我的 JSP 密码是
<s:form class="form-group " method="POST" id="profileform" theme="bootstrap" cssClass="form-horizontal" action="go.asociate.addactivities.action">
......
<div class="row">
<div class="col-md-12 btn-toolbar">
<button type="button" class="btn btn-default pull-right custombtn" accesskey="c" onclick="javascript:location.href='go.home.action';">
<s:text name="label.cancel"></s:text>
</button>
<s:submit class="btn btn-default pull-right custombtn" accesskey="o" key="label.ok"></s:submit>
</div>
</div>
</s:form
问题是它在提交按钮中呈现文字键名称值 <u>O</u>K
。有人知道解决这个问题的正确语法吗?
要在提交按钮中使用 HTML,它必须是 "button"
类型,因为按钮有主体,而 <input type="submit" />
没有;
<s:submit type="button" value="%{getText('label.ok')}" />
但这还不够;它将被翻译成
<button value="<u>O</u>K" type="submit">
<u>O</u>K
</button>
因为内置转义。
虽然在 <s:property />
中您可以通过设置 escapeHtml="false"
来禁用它,但 <s:submit />
不提供此选项;
要解决它,只需在按钮正文中使用 <s:text />
:
<s:submit type="button">
<s:text name="label.ok" />
</s:submit>
这很可能是唯一的方法,但它会起作用,并且会被翻译成
<button value="Submit" type="submit">
<u>O</u>K
</button>
我正在尝试使用 HTML 修饰符标签呈现提交按钮
在 ApplicationResources.properties 文件中
label.ok=<u>O</u>K
那么我的 JSP 密码是
<s:form class="form-group " method="POST" id="profileform" theme="bootstrap" cssClass="form-horizontal" action="go.asociate.addactivities.action">
......
<div class="row">
<div class="col-md-12 btn-toolbar">
<button type="button" class="btn btn-default pull-right custombtn" accesskey="c" onclick="javascript:location.href='go.home.action';">
<s:text name="label.cancel"></s:text>
</button>
<s:submit class="btn btn-default pull-right custombtn" accesskey="o" key="label.ok"></s:submit>
</div>
</div>
</s:form
问题是它在提交按钮中呈现文字键名称值 <u>O</u>K
。有人知道解决这个问题的正确语法吗?
要在提交按钮中使用 HTML,它必须是 "button"
类型,因为按钮有主体,而 <input type="submit" />
没有;
<s:submit type="button" value="%{getText('label.ok')}" />
但这还不够;它将被翻译成
<button value="<u>O</u>K" type="submit">
<u>O</u>K
</button>
因为内置转义。
虽然在 <s:property />
中您可以通过设置 escapeHtml="false"
来禁用它,但 <s:submit />
不提供此选项;
要解决它,只需在按钮正文中使用 <s:text />
:
<s:submit type="button">
<s:text name="label.ok" />
</s:submit>
这很可能是唯一的方法,但它会起作用,并且会被翻译成
<button value="Submit" type="submit">
<u>O</u>K
</button>