使用jsf 2和Primeface 3.4
我知道有许多类似的问题,但没有一个能解决这个问题。
当面板网格“内部”以固定值“true”呈现时(
但是当这个面板的渲染是有条件的:
注意:我使用嵌套的panelGrids将渲染条件放在需要有条件渲染的组件(输出和输入组件)的父元素中。感谢您的帮助。
[评论后编辑:]xhtml页面的作用:
-当用户单击selectOne按钮中的“合并”选项时,ajax更新将“renderInputMerge”切换为true,这会导致显示“外部”组件。它工作正常。在这个组件中,有一个输入字段,显示为OK。
-用户单击命令链接按钮后,我需要检索此输入字段的值。如上所述,我对此有问题。
xhtml:
<h:body style ="width:100%">
<h:form id = "currMatch">
<h:panelGrid>
<p:selectOneButton id ="selection" value="#{spellCheckBean.optionChosen}">
<f:selectItem itemLabel="keep both" itemValue="1" />
<f:selectItem itemLabel="delete both" itemValue="2" />
<f:selectItem itemLabel="merge" itemValue="3" />
<p:ajax update="outer" />
</p:selectOneButton>
</h:panelGrid>
<h:panelGrid id="outer" >
<h:panelGrid id="inner" rendered="#{spellCheckBean.renderInputMerge}">
<!-- **the line above does not update**, this one does <h:panelGrid rendered="true">-->
<h:outputText value="our suggestion: " style ="margin-left: auto; margin-right: auto"/>
<h:inputText id ="testinput" value="#{tableMatchesBean.mergedAuthorAjax}">
</h:inputText>
</h:panelGrid>
</h:panelGrid>
<p:commandButton action="#{tableMatchesBean.next_()}"
title="Add"
value="next"
update ="currMatch"
>
</p:commandButton>
</h:form>
</h:body>
尝试用jstlc:if
标记代替渲染的。这对我来说很管用。
呈现的条件显然取决于请求范围的变量,例如请求范围的托管bean的属性或请求参数。表单提交帐户作为一个完全独立的全新请求,所有请求范围内的托管bean都是新创建的,所有属性都设置为默认值。如果在收集提交的值(表单提交的应用请求值阶段)期间,呈现的属性计算为false,则不会收集这些值。
基本上有两种方法可以解决这个问题:
>
确保渲染
属性背后的条件在请求范围bean的(post)构造函数中正确预初始化,以便它在处理表单提交的请求期间返回完全相同的值,因为它是在向最终用户显示表单的请求期间。
将bean放在视图范围中。这样,只要您通过ajax或通过在action方法中返回void或null与同一视图交互,bean实例就会一直存在。
我在中有条件渲染组件。我使用最新版本,并在我的应用程序中使用。此组件用于显示带有文本的跨距,一旦用户单击它,它将变为带有组件的输入,用户可以通过此组件更改字段 首先,呈现一个值为的跨度,该跨度来自该组件的道具,单击该跨度,状态变为true,呈现的组件,我希望在呈现后尽快关注该。为此,我呈现一个并定义其属性,该属性将输入传递给名为的函数,并在该函数中写入focus方法。但当我单击“跨度”并重新渲染组
本文向大家介绍怎样有条件地渲染组件?相关面试题,主要包含被问及怎样有条件地渲染组件?时的应答技巧和注意事项,需要的朋友参考一下 or
我试图用ajax更新一个有条件渲染的组件。 但是,这不起作用。我可以保证实际上是可用的。这是如何造成的,我如何解决它?
Mpx中的条件渲染与原生小程序中完全一致,详情可以查看这里 简单示例如下: <template> <view class="container"> <!-- 通过 wx:if 的语法来控制需要渲染的元素 --> <view wx:if="{{ score > 90 }}"> A </view> <view wx:elif="{{ score > 60 }}"> B </
我对react还比较陌生,我一直在分解一个web应用程序,并用react组件替换部分。我现在正在开发一个组件,其中包含我创建的几个不同组件。 在新组件中,我在componentDidMount函数中进行API调用,并创建子组件。乍一看,一切看起来都很完美,但当我们在其中一个子组件中进行状态更改,然后在父组件中进行更改时,子组件将其状态重置为更改之前的状态。 我知道发生了什么,州政府没有被传递给家长
我刚刚安装了grails渲染插件,并想使用它来生成PDF文件。我创建了简单的模板,但此插件不渲染检查输入元素。当我将输入写为以下内容时: 我收到以下错误消息: 当我添加结束标记时,如下所示: 我在PDF中没有任何检查元素。我不是说,我想要在交互模式下进行检查,但是,我想要一个看起来像复选框的图像