ajax - f:ajax 不会渲染 h:panelGroup
问题描述
这是代码:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core"
xmlns:b="http://bootsfaces.net/ui"
xmlns:c="http://xmlns.jcp.org/jsp/jstl/core">
<f:metadata>
<f:event type="preRenderView" listener="#{recBean.permission()}"/>
</f:metadata>
<h:head>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/toastr.min.css"></link>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/toastr.min.js"></script>
<title>Reclamation</title>
</h:head>
<h:body>
<b:navBar brand="Reclamations" brandHref="ReclamationAll.xhtml" >
<b:navbarLinks>
<b:navLink value="Etats des Reclamation" href="InterventionAll.xhtml"></b:navLink>
<b:navLink value="Contrat" href="ContratAll.xhtml"></b:navLink>
<b:navLink value="La liste de nos produit" href="produitAll.xhtml"></b:navLink>
</b:navbarLinks>
</b:navBar>
<f:view>
<script type="text/javascript">
function success() {
toastr.success("Réclamation ajouté avec success !");
}
</script>
<h:form>
<h1><h:outputText value="Reclamation"/></h1>
<h:panelGroup id="result">
<h:panelGrid columns="2" cellpadding="2" >
<h:outputLabel value="Client:" for="client" />
<b:selectOneMenu id="client" value="#{sessionScope.idcli}" disabled="#{sessionScope.idcli==null ? false : true }" >
<!-- fixed -->
<f:selectItems value="#{recBean.clientSelect}" />
</b:selectOneMenu>
<h:outputLabel value="Produit:" for="produit" />
<b:selectOneMenu id="produit" value="#{recBean.idproduit}" >
<!-- fixed -->
<f:selectItems value="#{recBean.produitSelect}" />
</b:selectOneMenu>
<h:outputLabel value="Nom De Reclamation" for="descCli" />
<b:inputText id="nomRec" value="#{recBean.rec.nomRec}" title="Nom De Reclamation" required="true" requiredMessage="The DescCli field is required."/>
<h:outputLabel value="DateCreRec:" for="dateCreRec" />
<b:dateTimePicker id="dateCreRec" show-date="true" mode="toggle-icon" required="true" use-current="true" value="#{recBean.rec.dateCreRec}"/>
<h:outputLabel value="TypeRec:" for="type"/>
<h:selectOneRadio id ="type" value="#{recBean.type}">
<f:selectItem itemValue="réclamation logiciel" itemLabel="Reclamation Logiciel"></f:selectItem>
<f:selectItem itemValue="réclamation technique" itemLabel="Reclamation technique"></f:selectItem>
</h:selectOneRadio>
<h:outputLabel value="DescCli:" for="descCli" />
<b:inputTextarea id="descCli" value="#{recBean.rec.descCli}" title="DescCli" required="true" requiredMessage="The DescCli field is required."/>
<h:outputLabel value="DegUrgence:" for="degUrgence" />
<b:selectOneMenu id="degUrgence" value="#{recBean.degreurgence}" >
<f:selectItem itemValue="" itemLabel=""></f:selectItem>
<f:selectItem itemValue="1" itemLabel="urgente"></f:selectItem>
<f:selectItem itemValue="2" itemLabel="très urgente"></f:selectItem>
<f:selectItem itemValue="3" itemLabel="pas urgente"></f:selectItem>
</b:selectOneMenu>
</h:panelGrid>
</h:panelGroup>
<b:form horizontal="true">
<b:commandButton value="Ajouter" action="#{recBean.ajouter()}" onclick="success();" >
<f:ajax execute="@form" render="result" />
</b:commandButton>
<b:commandButton value="retourner a la liste " action="ReclamationAll.xhtml"/>
</b:form>
</h:form>
</f:view>
</h:body>
</html>
我将 panelGrid 放入 panelGroup 希望使用 ajax 渲染使用 commandButton 渲染面板组 ID,当我打开页面时出现此错误:
message Invalid search expression: result 子表达式结果不存在,或者无法解析。net.bootsfaces.component.commandButton.CommandButton j_idt11:j_idt33:j_idt34 附加信息:未找到 ID:结果搜索表达式:结果
我在这里做错了吗?事先谢谢你。
解决方案
推荐阅读
- java - 将 3 个链表合并为 1 个(Java)
- javascript - 如何在加载网页时隐藏 div
- ms-access - 标准中的 OnlyDigits 函数
- ubuntu - 无法使用 nginx 将子目录重定向到子域
- android - 我可以更改 ArCore 虚拟相机的姿势或在一个场景中有多个虚拟相机吗?
- powershell - Powershell:关于 %(百分号)的问题以及它在以下脚本片段中的工作方式
- elasticsearch - 将数据从 elasticsearch 传输到 kafka
- python - 没有名为 sh 的模块
- javascript - 处理 ReferenceError:geoip2 未在 jQuery 或 JavaScript 中定义
- excel - Excel中多个工作表的增量索引