<display:table export="true" id="data" name="${sessionScope.forbesList}"requestURI="">
<a href="#" rel="tooltip" content="<span>
Name:<s:property value="#data.rank" /><br/>
Email: <a><s:property value="#data.name" /></a><br/>
Phone:<s:property value="#data.age" /> </span>"> <display:column property="rank" title="Rank" sortable="true" /></a>
<display:column property="name" title="Name" sortable="true" />
<display:column property="age" title="Age" sortable="true" />
</display:table>
在Struts 2中,我尝试在<s:property>
标记内使用<display :column>
标记,但我只能看到<display:column>
值,而不能看到我使用<s:property>
访问的值。怎么做?
答案 0 :(得分:0)
#1:锚点(<A>
)标记没有任何content
属性。
请参阅the documentation,了解它支持哪些属性以及如何使用它们。
#2:在HTML中,将字符"
放入标记的属性时,您可以:
"
替换为'
,例如
myAttribute="this is 'right'"
或myAttribute='this is "right" too'
或"
编码"
,就像在
myAttribute="this is "right""
您必须使用<
(小于)或>
(大于)对<
和>
进行编码。
#3:那就是说,你可以把你的HTML放在Anchor Tag中,在它应该插入的地方,比如:
<a href="#" rel="tooltip">
Name:<s:property value="#data.rank" />
</a>
但是,在您的情况下,您注入了大量HTML,包括另一个 Anchor,这是不可能的。我认为你应该简单地使用div或类似容器的东西,比如:
<div rel="tooltip" >
<span>
Name:<s:property value="#data.rank" /><br/>
Email: <a><s:property value="#data.name" /></a><br/>
Phone:<s:property value="#data.age" />
</span>
</div>
在担心DisplayTag之前解决这个问题
修改强>
#4 改变
<s:property value="#data.rank" />
(以及所有其他标签)
<s:property value="#attr.data.rank" />
#attr
是用于访问pageContext
,
如果可用,否则搜索请求,会话和应用程序范围。