Я использую простые страницы и JSF2.0 для создания страницы.AutoScrolling на странице JSF/Primefaces
На странице у меня есть две панели, когда я нажимаю на кнопку «Click-me» на одной панели, она отображает вторую панель на той же странице, что я хочу, когда я нажимаю кнопку «Click-me», страница также должна автоматически прокручиваться и должна выводить второй заголовок панели перед пользователем. В настоящее время пользователю необходимо вручную прокрутить вниз, чтобы увидеть вторую панель. Код, как показано ниже
XHTML Page
<h:form id="form1">
<p:panel header="Panel One" id="PanelOne" >
<h:panelGrid styleClass="panelGrid" columns="2" id="PanelOneGrid" width="90%" >
<h:outputText value="First Input Field Panel One" ></h:outputText>
<p:inputTextarea rows="20" cols="80"></p:inputTextarea>
<h:outputText value="Second Input Field Panel One" ></h:outputText>
<p:inputTextarea rows="20" cols="80"></p:inputTextarea>
<h:outputText value="" ></h:outputText>
<p:commandButton value="Click-me" update="form1" action="#{autoScrollBean.clickAction}">
</p:commandButton>
</h:panelGrid>
</p:panel>
<p:panel header="Second One" id="PanelTwo" rendered="#{autoScrollBean.renderPanelTwo}">
<h:panelGrid styleClass="panelGrid" columns="2" id="PanelTwoGrid" width="90%" >
<h:outputText value="First Input Field Panel Two" ></h:outputText>
<p:inputTextarea rows="20" cols="80"></p:inputTextarea>
<h:outputText value="Second Input Field Panel Two" ></h:outputText>
<p:inputTextarea rows="20" cols="80"></p:inputTextarea>
</h:panelGrid>
</p:panel>
</h:form>
Managed Bean, как показано ниже
@ManagedBean
@ViewScoped
public class AutoScrollBean {
private boolean renderPanelTwo;
public boolean isRenderPanelTwo() {
return renderPanelTwo;
}
public void setRenderPanelTwo(boolean renderPanelTwo) {
this.renderPanelTwo = renderPanelTwo;
}
public void clickAction() {
System.out.println("Inside Method");
setRenderPanelTwo(true);
}
}
EDIT:
<p:focus />
Используя вышеприведенную команду фокуса, curosr переходит в первое поле ввода и это поле ввода отображается пользователю после автоматического прокрутки, но я хочу показать пользователя из заголовка панели NOT из первого поля ввода.