gpt4 book ai didi

javascript - 如何在 JavaScript 中获取复合组件的子组件的客户端 ID

转载 作者:行者123 更新时间:2023-11-29 22:14:54 25 4
gpt4 key购买 nike

我有一个复合组件,其中包含一些输入字段 ID 的参数,例如:

<cc:attribute
name="addressFieldId"
required="true" />

我想像这样使用组件:

<amn:singleLocationMap
id="singleLocationMap"
addressFieldId="address" .../>
<!-- some code, different ui:define regions -->
<h:inputText
value=""
id="address" />

但是当我在 JavaScript (var address = '#{cc.attrs.addressFieldId}';) 中访问 ID 时,我只得到 id 参数 address,明显地。但我想访问像 formId:address 这样的 JSF 客户端 ID。

有什么方法可以在 JavaScript 中获取 JSF 客户端 ID,或者将 JSF 客户端 ID 传递给复合组件的最佳方法是什么?

最佳答案

使用 binding 将组件绑定(bind)到 View 范围内的 UIComponent 变量,以便您可以使用 UIComponent#getClientId()打印其实际客户端 ID。

<h:inputText binding="#{addressInput}" ... />

...

<h:outputScript>
var addressInput = document.getElementById('#{addressInput.clientId}');
// ...
</h:outputScript>

关于javascript - 如何在 JavaScript 中获取复合组件的子组件的客户端 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15791533/

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