Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在自定义selectOneRadio上使用ajax事件时出现异常_Ajax_Jsf_Primefaces - Fatal编程技术网

在自定义selectOneRadio上使用ajax事件时出现异常

在自定义selectOneRadio上使用ajax事件时出现异常,ajax,jsf,primefaces,Ajax,Jsf,Primefaces,我正在尝试将selectOneRadio与自定义布局一起使用,如最后一个示例所示: 是什么引起的 我正在使用Primefaces 4.0和Mojarra 2.2.4,因为我可以看到您将p:radioButton放在ajax更新面板网格中 这样,您就可以更新p:radioButton,而无需更新customeRadio(“所有者”) 您可以通过两种方式解决此问题: 第一:同时更新与单选按钮相关的p:selectOneRadio <p:ajax process="@this" update="

我正在尝试将selectOneRadio与自定义布局一起使用,如最后一个示例所示:

是什么引起的


我正在使用Primefaces 4.0和Mojarra 2.2.4,因为我可以看到您将
p:radioButton
放在ajax更新面板网格中

这样,您就可以更新
p:radioButton
,而无需更新customeRadio(“所有者”)

您可以通过两种方式解决此问题:

第一:同时更新与单选按钮相关的p:selectOneRadio

<p:ajax process="@this" update="queryOptions @this"/>

第二:将单选按钮放在更新的容器外

<p:radioButton id="option1" for="customRadio" itemIndex="0"/>
<p:radioButton id="option2" for="customRadio" itemIndex="1"/>
<p:radioButton id="option3" for="customRadio" itemIndex="2"/>
<p:panelGrid columns="3" id="queryOptions">

</p:panelGrid>


希望这有帮助。

谢谢。当我更新公共父级时,我不再得到异常。但我还有一个问题。
queryOptions
面板中的值没有更新(我编辑了帖子,inputText只更改页面刷新时的值)。有什么想法吗?当然不会更新,因为ajax的过程是@this,您可能还需要处理单选按钮。。。例如:
。因为基本上,单选按钮和输入文本在网格中呈现,并且没有被处理,所以值不会被更新!好。。。这个组件让我有点困惑。谢谢最后一个问题。当我有
时,更新工作正常,但我只能选择一次项目。然后我必须刷新以进行另一个选择。没有例外。也许这对你来说也是一件不需要动脑筋的事:)事实上,这是非常奇怪的行为。正如我已经测试过的,更新后如何不调用组件的脚本(以创建PrimeFaces小部件)。因此,在本例中,我必须将panelGroup放在selectOneRadio和panelGrid周围。。然后在更新中我更新了panelGroup。。。这样,脚本将被称为“奇怪”,这很奇怪。它只在我将其包含在公共面板(queryPanel)中并定义ajax事件时起作用:
。谢谢。我希望我能给你更多的分数:)
<p:ajax process="@this" update="queryOptions @this"/>
<p:radioButton id="option1" for="customRadio" itemIndex="0"/>
<p:radioButton id="option2" for="customRadio" itemIndex="1"/>
<p:radioButton id="option3" for="customRadio" itemIndex="2"/>
<p:panelGrid columns="3" id="queryOptions">

</p:panelGrid>