Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 在h:commandLink中呈现隐藏的跨距文本_Jsf_Jsf 1.2 - Fatal编程技术网

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标记(即转义

如何最好地满足这一要求?当然,我可以在以后使用JQuery轻松地添加span,但是,出于我自己的教育目的,我想尝试使用自定义呈现程序,但不确定如何使用现有的默认呈现程序,该呈现程序添加了“onClick”事件处理程序和相关的javascript。我的google foo在搜索自定义commandLink渲染器时似乎失败了


请记住,这是JSF 1.2,我们不能使用任何第三方标记库,因为我们运行的是一个死气沉沉的非常旧版本的WebSphere Portal Server。

使用编写您可以在
标记中嵌套内容,包括其他标记和/或隐式文本,与其在其
属性中指定文本,不如执行以下操作:

<h:commandLink ...>
    <h:outputText .../>
    <span class="hidden"></span>
    #{bean.someText}
</h:commandLink>

#{bean.someText}

这将完全呈现您想要的内容。

我想您的意思是说使用实体转义-但这不起作用。我不想在屏幕上呈现literal<,我想将它呈现为实际的span标记,这是jsf
escape
属性应该做的。当然我忘记了commandLink不需要使用
value
属性。愚蠢的我(
<h:commandLink ...>
    <h:outputText .../>
    <span class="hidden"></span>
    #{bean.someText}
</h:commandLink>