component.clientId 和 p:component() 生成的客户端 id 之间的区别

2023-12-27

我正在尝试检索 p:dataList 内的 h:panelGroup 的客户端 ID。

我尝试了两种方法:

1.使用component.clientId 例如:

<h:panelGroup id="listItem">
    <h:outputText value="#{component.clientId}" />
</h:panelGroup>

2.使用 p:component() 例如:

<h:panelGroup id="listItem">
    <h:outputText value="#{p:component('listItem')}" />
</h:panelGroup>

请注意,该面板组位于数据列表内。现在,这两种情况生成的客户端 ID 是不同的。 (1) 没有将值“listItem”附加到客户端 ID,而 (2) 在生成的 clientId 中具有值“listItem”。

此外,使用 (1) 生成的客户端 ID 与生成的 html 组件上的客户端 ID 不同。

有人能解释一下这个问题为什么会这样吗?


隐式 EL 对象#{component}指的是current组件,在这种情况下

<h:outputText value="#{component.clientId}" />

the <h:outputText> itself!

如果您打算打印另一个组件的客户端 ID,那么您需要将组件实例绑定到视图中的唯一变量:binding,以便您可以在同一视图中的其他任何位置引用它。

<h:panelGroup id="listItem" binding="#{listItem}">
    <h:outputText value="#{listItem.clientId}" />
</h:panelGroup>

也可以看看:

  • 隐式 EL 对象 http://balusc.blogspot.com/2011/09/communication-in-jsf-20.html#ImplicitELObjects
  • JSF 中的“绑定”属性如何工作?何时以及如何使用它? https://stackoverflow.com/questions/14911158/how-binding-attribute-in-jsf-works
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

component.clientId 和 p:component() 生成的客户端 id 之间的区别 的相关文章

随机推荐

  • ASP.NET MVC ActionLink 保留“旧”路由参数

    我的两个过滤链接 Html ActionLink Customer 1 Index new customer 1 Html ActionLink Project A Index new project A 我的带有过滤功能的控制器 publ
  • 在图像周围浮动文本

    我需要帮助创建一个围绕价格标签浮动的文本容器 如下图所示 这是我到目前为止所尝试过的 jsFiddle 演示 http jsfiddle net kzmndzj4 HTML div class product p Lorem ipsum d
  • 返回 Lua 表中值的索引

    我在lua中有这张表 local values a b c 如果变量等于表条目之一 有没有办法返回表的索引 说 local onevalue a 如何在不迭代所有值的情况下获取表中 a 或一个值的索引 没有迭代就没有办法做到这一点 如果您发
  • 如何使用“setTimeout”调用对象本身

    为什么我不能使用setTimeout在 JavaScript 对象中 Message function this messageFactory this feedbackTag document getElementById feedbac
  • OpenACC + MPI Fortran 程序入门

    我有一个工作串行代码和一个通过 OpenACC 并行化的工作并行单 GPU 代码 现在我尝试通过在多个 GPU 上运行 采用 mpi openacc 范例来增加并行性 我用 Fortran 90 编写代码 并使用 Nvidia 的 HPC
  • PHP include/require 不传递变量

    是否可以在 PHP 中包含一些东西without传递传递给原始脚本的变量 我正在使用 Joomla 并且我收到了错误记录here https stackoverflow com questions 8356683 joomla error
  • 如何通过 adb android 更改首选网络类型?

    如何使用 ADB 更改首选网络类型 示例 设置仅使用 GSM 仅使用 WCDMA 仅使用 LTE 或自动 这适用于我的设备 adb shell sqlite3 data data com android providers settings
  • 获取 ObservableValue 的所有已注册侦听器

    如何让所有听众获得可观察的值 我可以扩展课程并覆盖addListener and removeListener将它们存储在集合中的方法 但该集合应该已经以某种方式存储在可观察值内 我怎样才能得到那一套 I find a way around
  • Powershell获取完整路径信息

    我有一个名为视频的目录 在这个目录里面 是一堆各种相机的子目录 我有一个脚本可以检查各个摄像机 并删除早于特定日期的录制内容 我在获取相机的完整目录信息时遇到了一些麻烦 我正在使用以下方法来获取它 Get all of the paths
  • IOS 覆盖本地通知

    我创建了一个Local Notification当某个按钮 SetButton 被点击 我现在的问题是如果SetButton再次按下 它不会覆盖第一次按下 它会显示 2 个通知 依此类推 如何确保第二次按按钮会覆盖第一次按按钮并且不会累积通
  • 后台工作者是一个线程吗? (C#)

    后台工作者是一个线程吗 我应该什么时候使用它 是的 它基本上就像一个线程 但具有额外的功能 通知您进度和完成时间的事件 每当您需要执行可能需要一段时间的操作 例如计算 文件或数据库读 写 Web 请求等 并且您不希望 GUI 在执行时显得无
  • 如何挂钩 MANAGED(.NET) 进程并收集该进程内的信息?

    我需要挂钩托管 C C CLI 进程 我需要查找有关它有多少个窗口 其关联控件及其属性 的信息并将其发送到用 C 托管代码编写的目标应用程序 为此我需要做什么 我是否需要探索该托管进程的 IAT 导入地址表 和 EAT 导出地址表 我需要用
  • Rails 从现有表生成模型?

    我对 Rails 框架非常陌生 想知道如何基于现有表生成模型 例如 我有一个名为 person 的表 并且想要根据该表中的列生成模型 但是 每当我使用 ruby script generate model Person skip migra
  • video-react 属性宽度和高度不起作用

    按照这个doc https video react js org components player 我们可以在属性中添加玩家的宽度和高度
  • 在 text/xml 值中编码 CR-LF 换行符的正确方法是什么?

    与可以执行任何操作的 application xml 文件或将所有空白序列转换为单个空格字符的标准化字符串值相反 我在这里专门询问具有字符串值的文本 xml 文件的上下文 为了简单起见 假设我仅在 UTF8 编码文件中使用 ASCII 字符
  • 是否可以将Python Seaborn与plotly集成

    我正在为plot ly寻找python seaborn的一些指导 是否可以在plot ly 上提供seaborn 图表 有可用的示例或教程吗 请帮忙 提前致谢 Seaborn 基于 matplotlib Plotly 可以转换 matplo
  • 带有 json 文件的 C++ Boost 程序选项

    可以使用 boost 程序选项库 http www boost org doc libs 1 64 0 doc html program options html http www boost org doc libs 1 64 0 doc
  • 启用链接时优化会导致链接器错误吗?

    我有可以正常编译和链接的代码 我现在尝试启用链接时优化 但添加 flto我的编译器和链接器标志导致链接器错误 usr local lib libboost thread a thread o In function void boost t
  • 同一活动中不同可组合功能的不同视图模型

    我在堆栈溢出的某个地方读到过 如果您正在创建新应用程序 则可以完全跳过使用 Fragment 只需使用可组合函数来表示您的屏幕即可 但是 在使用片段时 我们可以针对不同的片段 屏幕使用不同的视图模型 我们可以通过可组合函数实现相同的目标吗
  • component.clientId 和 p:component() 生成的客户端 id 之间的区别

    我正在尝试检索 p dataList 内的 h panelGroup 的客户端 ID 我尝试了两种方法 1 使用component clientId 例如