问题标签 [conditional-rendering]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jsf - “未找到记录”不考虑有条件呈现的 p:dataTable 列
我目前在使用 PrimeFaces 4.0 的 dataTable 中的列的呈现属性存在一个小问题。我的表中有一个不应该总是显示的列,所以我使用了它的渲染属性并从我的支持 bean 中获取值。这是第 6 列也是最后一列。数据表位于 ap:dialog 中,将在方法结束时显示。
渲染属性似乎可以正常工作,因为当 showColumn 为 false 时,该列将不会显示,反之亦然,但存在问题。如图所示,“未找到记录”。消息似乎直到最后一列才能到达。当我尝试删除呈现的属性或手动将其设置为 true(不使用支持 bean 值)时,“未找到记录”。消息将按预期到达最后一列。
包含这些元素的整个对话框/表单似乎在 ajax 请求之后正确更新。
支持 Bean 方法:
xhtml中的列部分:
如表所示:
ajax - 在 Panel 中使用渲染时未调用 Primefaces Ajax 侦听器
下面是正在使用的代码片段。当我从下面的代码中删除渲染属性时,监听器被调用。但是使用渲染,它不会调用侦听器。我的 PrimaryContactHomeAddressBean bean 位于 RequestScope 中,而 AddressManagedBean 具有 ViewScope。
jsf - 根据面孔消息的存在有条件地呈现
我的表中有一个特殊的行用于错误:
如何设置此行,以便仅在出现错误时显示该行?
jsf - 为什么 ui:fragment 在自定义标签文件中不起作用?
我为我的 JSF 2.2 应用程序创建了以下自定义标签:
以下是自定义标签文件的关键部分:
由于 PrimeFaces p:password 的问题,我无法设置 match="" 所以我需要测试 password_match 并且只有在 password_match 不为空时才包含 match。首先,我尝试使用 ui:fragment ,如下所示:
结果是当我设置 password_match = "" 时 p:password 根本没有呈现。换句话说,两个测试都没有返回 true。我唯一的理论是 ui:fragment 在自定义标记文件中不起作用。
然后我将我的代码更改为以下代码,它按预期工作。
jsf - 如何在页面加载之前隐藏可切换的 p:panel?
我有一个包含 2 个组件、一个按钮和面板的 JSF 页面。该按钮调用 jQuerytoggle
来隐藏和显示面板。我希望当页面加载时,面板最初是隐藏的,这样当我第一次按下按钮时,面板就会显示出来。
使用此代码,面板始终最初是可见的。
security - JSF 是否阻止被篡改的请求调用未呈现的托管 bean 操作
托管 bean 中的方法受 JSF 保护?见代码:
托管豆
XHTML
如果按钮未呈现(rendered="false"),可以完成 HTTP POST 请求(就像按钮一样)并调用 test() 方法?
换句话说,JSF 阻止了被篡改的请求对托管 bean 方法的调用?
jsf - 为什么是未评估和
我有一个 JSF 2 主模板,如下所示:
在 Wildfly 9.0.1 Final 中部署它时,我看到我的所有<ui:fragment>
属性都被渲染了。这是为什么?我正在使用 JSF 2.2 框架进行开发。
我的面孔项目阶段是Development
.
注意:在关于这个问题的所有答案中,没有一个是这个问题的解决方案(所以我做了功课)。
validation - 仅在验证成功时渲染组件
在 JSF 2.X 中,我可以仅在验证成功时渲染组件吗?
在我的申请中,我有许多必须填写的字段。这些数据可以通过搜索键从 WebService 导入。
当用户输入有效的搜索键时,系统会搜索其他字段并使用新值呈现它们。但是当用户输入一个不存在的键(或任何其他验证错误)时,服务器会生成一个验证错误,但仍会呈现字段,从而丢失任何已填充的数据。
我需要的是用户可以执行查询,并且如果查询没有返回结果,这不会影响他已经输入的任何数据。
下面是一个代码示例。因此,如果用户填写了updateThisOnSuccess中的字段,并且在尝试查询但未成功后,填写的值不会丢失。
提交字段值以运行搜索似乎也不是一个选项,因为这将导致需要验证updateThisOnSuccess中的字段。
注意:我看到了@BalusC 对类似问题的回答,但这与我想知道的不同,在这种情况下,总是呈现foo-holder并且foo是调节的。这不是我的情况,因为这种方法会使控件在验证失败时不出现。
jsf - 有条件地渲染取决于 p:selectOneMenu 值
我正在尝试从现有的 Primefaces 组件构建一个自定义组件,我需要一些帮助。我有一个 selectOneMenu,我希望它根据在菜单中选择的选项来呈现或不呈现(并禁用或启用)其他组件。这里的困难是我不能使用托管 Bean 来做到这一点(我有几个原因),我需要一个纯 xhtml 代码。
我尝试了一些<c:choose>
东西<ui:parameter>
来创建布尔值,但由于某种原因,我看不到它不起作用。你们可以看看我的代码,看看你有什么想法吗?这可能是一些我无法理解的简单事情或我还不知道的事情。
jsf - 动态 TabView primefaces,选项卡渲染属性不起作用
我有一个来自 Primefaces 的 tabView 选项卡组件的“问题”。我做了一个带有基于数组的动态选项卡的 tabView。
但是某些选项卡无法根据该数组中对象的布尔属性呈现。
我尝试了渲染=“真”或“假”,但没有任何反应(在选项卡上)。我使用 render="#{_item.show}" 我尝试使用禁用功能并且工作正常,但这不是我的需要。
有人知道如何解决这个问题吗?
检查我的代码: