0

我有以下代码:

<s:select name="user.primaryGroup.id" list="#groupListAction.groups" listKey="id" listValue="name"
  headerKey="" headerValue="Please select" id="addUser-primaryGroup" />

问题是选项文本将具有未转义的 HTML,例如<b>Name</b>. 这将导致选项以粗体显示。我怎样才能防止这种情况?只有<s:property/>标签似乎逃脱了 html。

4

2 回答 2

0

那是真的.. 根据文档,只有属性标签具有escape默认设置为 true 的参数。选择标签没有这样的参数,所以恐怕您必须转义HTML服务器端...您可以使用JSoup或类似的库进行HTML操作...

于 2012-09-05T11:20:00.760 回答
0

您可以改用这种方法: html select with struts iterator <s:iterator>

<select id="xxx" size="1" name="xxx">
   <option value=""> <s:text name="page.search.emptyOption" /></option>          
   <s:iterator value="xxx">                     
      <s:if test="%{key.indexOf('|') == -1}">
         <option value="">XXXXXXXXXXXXXXXXX</option>
      </s:if>
   </s:iterator>
</select>

这将允许您使用<s:property>标签控制情况并逃脱它。

于 2014-08-27T15:55:04.767 回答