Jsf 在h:commandLink中呈现隐藏的跨距文本
我们有一个可访问性要求,即为屏幕阅读器呈现带有附加“屏幕外”文本的某些命令链接。因此,我们希望最终呈现如下内容(为清晰起见,省略属性)Jsf 在h:commandLink中呈现隐藏的跨距文本,jsf,jsf-1.2,Jsf,Jsf 1.2,我们有一个可访问性要求,即为屏幕阅读器呈现带有附加“屏幕外”文本的某些命令链接。因此,我们希望最终呈现如下内容(为清晰起见,省略属性) 编辑John Smith的详细信息 问题是标准jsf1.2标记不尊重escape属性。我尝试了类似于的方法,其中linkText的计算结果是上面显示的标记的内容,但这会按字面意思呈现span标记(即转义) 如何最好地满足这一要求?当然,我可以在以后使用JQuery轻松地添加span,但是,出于我自己的教育目的,我想尝试使用自定义呈现程序,但不确定如何使用现有的
编辑John Smith的详细信息
问题是标准jsf1.2
标记不尊重escape
属性。我尝试了类似于
的方法,其中linkText的计算结果是上面显示的标记的内容,但这会按字面意思呈现span标记(即转义请记住,这是JSF 1.2,我们不能使用任何第三方标记库,因为我们运行的是一个死气沉沉的非常旧版本的WebSphere Portal Server。使用
标记中嵌套内容,包括其他标记和/或隐式文本,与其在其值
属性中指定文本,不如执行以下操作:
<h:commandLink ...>
<h:outputText .../>
<span class="hidden"></span>
#{bean.someText}
</h:commandLink>
#{bean.someText}
这将完全呈现您想要的内容。我想您的意思是说使用实体转义-但这不起作用。我不想在屏幕上呈现literal<,我想将它呈现为实际的span标记,这是jsfescape
属性应该做的。当然我忘记了commandLink不需要使用value
属性。愚蠢的我(
<h:commandLink ...>
<h:outputText .../>
<span class="hidden"></span>
#{bean.someText}
</h:commandLink>