gpt4 book ai didi

jsf-2 - 在 ui :include resource 中生成唯一的 ID 标签

转载 作者:行者123 更新时间:2023-12-04 20:54:27 24 4
gpt4 key购买 nike

我正在构建一个页面,该页面将包含多个标签实例,如下所示。

<ui:include id="foo" src="images/something.svg" />

Faces Servlet 将 svg 文件传递​​给浏览器,除了它找到的 EL 表达式之外没有任何处理,这很好。问题是包含文件中的 id 标签是静态的,因此该文件的多个包含将生成非唯一的 ID 标签。

我想做的是什么 h:表格确实如此,其中 的ID用户界面:包括 标记被添加到包含文件中元素的 ID 之前。然后我可以毫不含糊地解决所有问题。

是否有一种公认的“最佳实践”方式来做到这一点?

更新:也许我应该通过跟进来增加这个问题,我首先需要这样做吗?我的目标是在 svg 文档的每个包含副本中唯一地处理标签,其中可以有任意数量。我有 jQuery 可用,因为它无论如何都是由 Primefaces 引入的。

所以如果我有一个这样的 JSF 文件:
<ui:include id="foo" src="images/something.svg" />
<ui:include id="bar" src="images/something.svg" />

在 something.svg 文件中我有一个标签
<rect id="blink" ... />

在页面上的 javascript 中,我希望能够获得指向 的指针。 foo:blink 栏:闪烁 .我想我可以使用 XPath 表达式,但我知道它们有点慢。我无法想象发明 的人用户界面:包括 标签还没有考虑过如何处理这个问题,所以我假设我错过了一些明显的东西。

最佳答案

将其传递为 <ui:param> .

<ui:include src="images/something.svg">
<ui:param name="id" value="foo" />
</ui:include>
<ui:include src="images/something.svg">
<ui:param name="id" value="bar" />
</ui:include>

您可以通过参数名称 #{id} 来引用它在包含文件的 EL 中。例如。
<rect id="#{id}_blink" ... />

关于jsf-2 - 在 ui :include resource 中生成唯一的 ID 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6142328/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com