- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经完全改变了我的代码。但是事件索引仍然显示出问题。有时它会被调用,有时它不会。
下面的 xhtml 代码有什么问题?
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.org/ui" >
<h:head>
<title>Admin Panel</title>
<style type="text/css">
.ui-accordion .ui-accordion-content{
background-color: #eedae3;
}
.ui-accordion .ui-accordion-header {
height: 30px;
background-color: #e74f54;
}
.ui-tabs .ui-tabs-nav li{
background-color: #6f97df;
height: 35px;
}
.datatable{
background-color: #eedae3;
}
</style>
</h:head>
<h:body>
<p:tabView id="tabView" activeIndex="#{profileInfoManagedBean.myCurrentTab}" >
<p:ajax event="tabChange" listener="#{profileInfoManagedBean.tabIsChangedKana}" />
<p:tab id="locationInfoTab" title="Location Info">
<h:form id="form1">
<p:growl showDetail="true" />
<p:panel header="New Country">
<h:panelGrid columns="3" cellpadding="5" cellspacing="5">
<p:column>
<h:outputLabel for="country" value="Country: "></h:outputLabel>
</p:column>
<p:column>
<p:inputText id="country" value="#{profileInfoManagedBean.country.country}" required="true" label="City">
<f:validateLength minimum="5" maximum="20" />
<p:ajax event="blur" update="msg1"></p:ajax>
</p:inputText>
</p:column>
<p:column>
<p:message id="msg1" for="country" display="icon"></p:message>
</p:column>
</h:panelGrid>
<p:commandButton type="submit" action="#{profileInfoManagedBean.addCountry}" value="Save" ajax="true" ></p:commandButton>
</p:panel>
</h:form>
<p:separator />
<h:form id="countryDataTableForm">
<p:panel>
<p:growl id="messagesww" />
<p:confirmDialog id="confirmDialog" message="Are you sure you want to delete the selected row ?"
header="Deleting Row" severity="alert" widgetVar="confirmation1">
<p:commandButton id="confirm" value="Yes Sure" update="messagesww" oncomplete="confirmation1.hide()"
action="#{profileInfoManagedBean.deleteObject}" />
<p:commandButton id="decline" value="Not Yet" onclick="confirmation1.hide()" type="button" />
</p:confirmDialog>
<p:dataTable style="width: 700px;" var="coun" value="#{profileInfoManagedBean.countryList}" selection="#{profileInfoManagedBean.deletingObj}" rowKey="#{coun.countryId}"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
paginator="true" rows="5" rowsPerPageTemplate="10,15,20,25" editable="true">
<p:ajax event="rowEdit" update="@this"
listener="#{profileInfoManagedBean.onEditRow}" />
<p:column headerText="Country">
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{coun.country}" />
</f:facet>
<f:facet name="input">
<p:inputText value="#{coun.country}" style="width:100%" />
</f:facet>
</p:cellEditor>
</p:column>
<p:column id="inactive" filterBy="#{coun.isActive}"
headerText="isActive" footerText="exact"
filterOptions="#{profileInfoManagedBean.isActiveDropDown}"
filterMatchMode="exact">
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{coun.isActive}"></h:outputText>
</f:facet>
<f:facet name="input">
<h:selectOneMenu value="#{coun.isActive}" >
<f:selectItem itemLabel="True" itemValue="true" />
<f:selectItem itemLabel="False" itemValue="false" />
</h:selectOneMenu>
</f:facet>
</p:cellEditor>
</p:column>
<p:column headerText="Edit">
<p:rowEditor />
</p:column>
<p:column headerText="Delete">
<p:commandButton type="button" onclick="confirmation1.show()"
id="delCountry" title="Delete Country" icon="ui-icon ui-icon-trash" />
</p:column>
<p:column selectionMode="single">
<f:facet name="header">
<h:outputText value="select" />
</f:facet>
</p:column>
</p:dataTable>
</p:panel>
</h:form>
</p:tab>
<p:tab id="basicInfoTab" title="Basic info">
<p:accordionPanel id="aPanel1">
<p:tab id="tab2" title="basic info">
<h:form id="dkk">
This is basic info tab.
</h:form>
<h:form id="ddkk">
This is basic info tab.
</h:form>
</p:tab>
</p:accordionPanel>
</p:tab>
</p:tabView>
</h:body>
</html>
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.org/ui" >
<h:head>
<title>Admin Panel</title>
<script type="text/javascript">
function deleteObj(x){
//alert("checking javascript - " + x);
}
</script>
<style type="text/css">
.ui-accordion .ui-accordion-content{
background-color: #eedae3;
}
.ui-accordion .ui-accordion-header {
height: 30px;
background-color: #e74f54;
}
.ui-tabs .ui-tabs-nav li{
background-color: #6f97df;
height: 35px;
}
.datatable{
background-color: #eedae3;
}
</style>
</h:head>
<h:body>
<h:form id="mainForm">
<p:growl id="growl" showDetail="true" />
<p:confirmDialog id="confirmDialog" message="Are you sure you want to delete the selected row ?"
header="Deleting Row" severity="alert" widgetVar="confirmation1">
<p:commandButton id="confirm" value="Yes Sure" update=":mainForm:growl mainForm:myTabViewID:aPanel:countryTable" oncomplete="confirmation1.hide()"
action="#{profileInfoManagedBean.deleteObject}">
<!-- <f:ajax render=":mainForm" />-->
</p:commandButton>
<p:commandButton id="decline" value="Not Yet" onclick="confirmation1.hide()" type="button" />
</p:confirmDialog>
<p:tabView id="myTabViewID" activeIndex="#{profileInfoManagedBean.myCurrentTab}" >
<p:ajax event="tabChange" listener="#{profileInfoManagedBean.tabIsChanged}" />
<p:tab id="locationInfoTab" title="Location Info">
<p:accordionPanel id="aPanel" activeIndex="#{profileInfoManagedBean.myCurrentATab}">
<p:tab id="tab1" title="Country">
<p:outputPanel>
<h:panelGrid columns="3" cellpadding="5" cellspacing="5">
<p:column>
<h:outputLabel for="country" value="Country: "></h:outputLabel>
</p:column>
<p:column>
<p:inputText id="country" value="#{profileInfoManagedBean.country.country}" required="false" label="Country">
<p:watermark value="Enter a country name" for="country" />
<f:validateLength for="country" minimum="5" maximum="20" />
<p:ajax event="blur" update="msg1" />
<f:validateRequired for="country" />
</p:inputText>
</p:column>
<p:column>
<p:message id="msg1" for="country" display="icon"></p:message>
</p:column>
</h:panelGrid>
<p:commandButton value="Add" action="#{profileInfoManagedBean.addCountry}" update=":mainForm" style="margin:10px 0" id="btnAdd"/>
</p:outputPanel>
<p:separator />
<p:outputPanel id="countryTable">
<p:dataTable style="width: 700px;" var="coun" value="#{profileInfoManagedBean.countryList}" selection="#{profileInfoManagedBean.deletingObj}" rowKey="#{coun.countryId}"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
paginator="true" rows="5" rowsPerPageTemplate="10,15,20,25" editable="true">
<p:ajax event="rowEdit" update="@this"
listener="#{profileInfoManagedBean.onEditRow}" />
<p:confirmDialog id="confirmDialog" message="Are you sure you want to delete the selected row ?"
header="Deleting Row" severity="alert" widgetVar="confirmation2">
<p:commandButton id="confirm" value="Yes Sure" update=":mainForm" oncomplete="confirmation2.hide()"
action="#{profileInfoManagedBean.deleteObject}" />
<p:commandButton id="decline" value="Not Yet" onclick="confirmation2.hide()" type="button" />
</p:confirmDialog>
<p:column headerText="Country">
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{coun.country}" />
</f:facet>
<f:facet name="input">
<p:inputText value="#{coun.country}" style="width:100%" />
</f:facet>
</p:cellEditor>
</p:column>
<p:column id="inactive" filterBy="#{coun.isActive}"
headerText="isActive" footerText="exact"
filterOptions="#{profileInfoManagedBean.isActiveDropDown}"
filterMatchMode="exact">
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{coun.isActive}"></h:outputText>
</f:facet>
<f:facet name="input">
<h:selectOneMenu value="#{coun.isActive}" >
<f:selectItem itemLabel="True" itemValue="true" />
<f:selectItem itemLabel="False" itemValue="false" />
</h:selectOneMenu>
</f:facet>
</p:cellEditor>
</p:column>
<p:column headerText="Edit">
<p:rowEditor />
</p:column>
<p:column headerText="Delete">
<p:commandButton update=":mainForm:growl :mainForm:myTabViewID:aPanel:countryTable" icon="ui-icon-circle-close" action="#{profileInfoManagedBean.deleteCountry(coun.countryId)}"
title="Delete Country" style="border-color:#FF0000" />
</p:column>
</p:dataTable>
</p:outputPanel>
</p:tab>
<p:tab id="tab2" title="Province">
<p:outputPanel>
<h:panelGrid columns="3" cellpadding="5" cellspacing="5">
<p:column>
<p:selectOneMenu value="#{profileInfoManagedBean.province.country.countryId}" id="cou"
required="false">
<f:selectItem itemLabel="Select Here" itemValue="" />
<f:selectItems
value="#{profileInfoManagedBean.countryList}"
var="coun" itemValue="#{coun.countryId}" itemLabel="#{coun.country}" />
<p:ajax event="blur" update="msg2" />
</p:selectOneMenu><p:message id="msg2" for="cou" display="icon" />
</p:column>
<p:column>
<h:outputLabel for="province" value="Province: "></h:outputLabel>
</p:column>
<p:column>
<p:inputText id="province" value="#{profileInfoManagedBean.province.province}" required="false" label="Province">
<p:watermark value="Enter a province name" for="province" />
<f:validateLength minimum="5" maximum="20" />
<p:ajax event="blur" update="msg3"></p:ajax>
</p:inputText>
</p:column>
<p:column>
<p:message id="msg3" for="province" display="icon"></p:message>
</p:column>
</h:panelGrid>
<p:commandButton value="Add" action="#{profileInfoManagedBean.addProvince}" update=":mainForm" style="margin:10px 0" id="btnAddProvince"/>
</p:outputPanel>
<p:separator />
<p:outputPanel id="provinceTable">
<p:dataTable style="width: 700px;" var="prov" value="#{profileInfoManagedBean.provinceList}" selection="#{profileInfoManagedBean.deletingObj}" rowKey="#{prov.provinceId}"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
paginator="true" rows="5" rowsPerPageTemplate="10,15,20,25" editable="true">
<p:ajax event="rowEdit" update="@this"
listener="#{profileInfoManagedBean.onEditRow}" />
<p:column headerText="Province">
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{prov.province}" />
</f:facet>
<f:facet name="input">
<p:inputText value="#{prov.province}" style="width:100%" />
</f:facet>
</p:cellEditor>
</p:column>
<p:column id="inactive" filterBy="#{coun.isActive}"
headerText="isActive" footerText="exact"
filterOptions="#{profileInfoManagedBean.isActiveDropDown}"
filterMatchMode="exact">
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{prov.isActive}"></h:outputText>
</f:facet>
<f:facet name="input">
<h:selectOneMenu value="#{prov.isActive}" >
<f:selectItem itemLabel="True" itemValue="true" />
<f:selectItem itemLabel="False" itemValue="false" />
</h:selectOneMenu>
</f:facet>
</p:cellEditor>
</p:column>
<p:column headerText="Edit">
<p:rowEditor />
<p:commandButton icon="ui-icon-circle-close" onclick="deleteObj(5)" title="Delete Province" style="border-color:#FF0000" />
</p:column>
<p:column headerText="Delete">
<p:commandButton type="button" onclick="confirmation1.show()"
id="delProvince" title="Delete Province" icon="ui-icon ui-icon-trash" />
</p:column>
<p:column selectionMode="single">
<f:facet name="header">
<h:outputText value="select" />
</f:facet>
</p:column>
</p:dataTable>
</p:outputPanel>
</p:tab>
</p:accordionPanel>
</p:tab>
<p:tab id="basicInfoTab" title="Basic info">
<p:accordionPanel id="aPanel1">
<p:tab id="tab2" title="basic info">
This is basic info tab.
This is basic info tab.
</p:tab>
</p:accordionPanel>
</p:tab>
</p:tabView>
</h:form>
</h:body>
</html>
activeindex
我做的时候工作
required="false"
对于一个选项卡的每个组件。全部更改为
required="true"
造成
activeindex
不工作,但如果您更改为
required="false"
仅一个选项卡的组件
activeindex
工作得很好。
最佳答案
如 <p:tabView
在 <h:form
, _activeIndex 被更新。
如 <p:tabView
不在 <h:form
, _activeIndex 未更新。
这可以在使用 Firebug 的 POST 中看到。
据我所知,_activeIndex 和 _activetab 应该与 TabView 组件具有相同的值。
我将以下代码与多个选项卡一起使用,并在每个选项卡中使用不同的形式:
public void tabIsChanged(TabChangeEvent event) {
//This code was taken directly from TabViewRenderer.
FacesContext context = FacesContext.getCurrentInstance();
Map<String, String> params = context.getExternalContext().getRequestParameterMap();
TabView tabView = (TabView) event.getComponent();
String activeIndexValue = params.get(tabView.getClientId(context) + "_tabindex");
//this.activeTab = Integer.parseInt(activeIndexValue);
this.myCurrentATab = Integer.parseInt(activeIndexValue);
}
关于jsf - Primefaces tabview 事件索引无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9972045/
我通过 spring ioc 编写了一些 Rest 应用程序。但我无法解决这个问题。这是我的异常(exception): org.springframework.beans.factory.BeanC
我对 TestNG、Spring 框架等完全陌生,我正在尝试使用注释 @Value通过 @Configuration 访问配置文件注释。 我在这里想要实现的目标是让控制台从配置文件中写出“hi”,通过
为此工作了几个小时。我完全被难住了。 这是 CS113 的实验室。 如果用户在程序(二进制计算器)结束时选择继续,我们需要使用 goto 语句来到达程序的顶部。 但是,我们还需要释放所有分配的内存。
我正在尝试使用 ffmpeg 库构建一个小的 C 程序。但是我什至无法使用 avformat_open_input() 打开音频文件设置检查错误代码的函数后,我得到以下输出: Error code:
使用 Spring Initializer 创建一个简单的 Spring boot。我只在可用选项下选择 DevTools。 创建项目后,无需对其进行任何更改,即可正常运行程序。 现在,当我尝试在项目
所以我只是在 Mac OS X 中通过 brew 安装了 qt。但是它无法链接它。当我尝试运行 brew link qt 或 brew link --overwrite qt 我得到以下信息: ton
我在提交和 pull 时遇到了问题:在提交的 IDE 中,我看到: warning not all local changes may be shown due to an error: unable
我跑 man gcc | grep "-L" 我明白了 Usage: grep [OPTION]... PATTERN [FILE]... Try `grep --help' for more inf
我有一段代码,旨在接收任何 URL 并将其从网络上撕下来。到目前为止,它运行良好,直到有人给了它这个 URL: http://www.aspensurgical.com/static/images/a
在过去的 5 个小时里,我一直在尝试在我的服务器上设置 WireGuard,但在完成所有设置后,我无法 ping IP 或解析域。 下面是服务器配置 [Interface] Address = 10.
我正在尝试在 GitLab 中 fork 我的一个私有(private)项目,但是当我按下 fork 按钮时,我会收到以下信息: No available namespaces to fork the
我这里遇到了一些问题。我是 node.js 和 Rest API 的新手,但我正在尝试自学。我制作了 REST API,使用 MongoDB 与我的数据库进行通信,我使用 Postman 来测试我的路
下面的代码在控制台中给出以下消息: Uncaught DOMException: Failed to execute 'appendChild' on 'Node': The new child el
我正在尝试调用一个新端点来显示数据,我意识到在上一组有效的数据中,它在数据周围用一对额外的“[]”括号进行控制台,我认为这就是问题是,而新端点不会以我使用数据的方式产生它! 这是 NgFor 失败的原
我正在尝试将我的 Symfony2 应用程序部署到我的 Azure Web 应用程序,但遇到了一些麻烦。 推送到远程时,我在终端中收到以下消息 remote: Updating branch 'mas
Minikube已启动并正在运行,没有任何错误,但是我无法 curl IP。我在这里遵循:https://docs.traefik.io/user-guide/kubernetes/,似乎没有提到关闭
每当我尝试docker组成任何项目时,都会出现以下错误。 我尝试过有和没有sudo 我在这台机器上只有这个问题。我可以在Mac和Amazon WorkSpace上运行相同的容器。 (myslabs)
我正在尝试 pip install stanza 并收到此消息: ERROR: No matching distribution found for torch>=1.3.0 (from stanza
DNS 解析看起来不错,但我无法 ping 我的服务。可能是什么原因? 来自集群中的另一个 Pod: $ ping backend PING backend.default.svc.cluster.l
我正在使用Hibernate 4 + Spring MVC 4当我开始 Apache Tomcat Server 8我收到此错误: Error creating bean with name 'wel
我是一名优秀的程序员,十分优秀!