Фокус после рендера в richFaces - PullRequest
0 голосов
/ 06 сентября 2011

У меня есть ah: inputText, у которого есть событие onBlur, которое переопределяет группу панелей с помощью a4j: repeat, которое будет иметь номер h: inputText, введенный в первый inputText.Поля inputText создаются, но фокус находится не на первом поле в a4j: repet, потому что фокус был установлен до повторного рендеринга panelGroup после повторного рендеринга, когда фокус потерян.

XHTMLкод

      <a4j:outputPanel id="PageARoot">
                <a4j:keepAlive beanName="simpleBean" />
                <h:outputText value="Infants:" />
                <h:inputText id="text" value="#{simpleBean.size}">
                    <a4j:support event="onblur" action="#{simpleBean.action}"                   
                        reRender="MyContent" />
                </h:inputText>
                <h:panelGroup id="MyContent">
                    <a4j:repeat id="list" value="#{simpleBean.list}" var="item" rowKeyVar="rowIndex">
                        <h:inputText name="test#{rowIndex}" id="test" value="#{rowIndex}" />
                    </a4j:repeat> 
                </h:panelGroup>
            </a4j:outputPanel>

Боб

public class SimpleStringBean {
private List list;
public List getList() {
    return list;
}
public void setList(List list) {
    this.list = list;
}
private int size;
public int getSize() {
    return size;
}
public void setSize(int size) {
    this.size = size;
}
@PostConstruct
public void initialize(){
    System.out.println("Initalize");
    list = new ArrayList();
    list.add(new Long(0));
    size = 1;
}
private String text;
public String getText() {
    return text;
}
public void setText(String text) {
    this.text = text;
}
public void action(){
    System.out.println("Action: " + text);
    list = new ArrayList();
    for(int i = 0; i < size; i++){
        list.add(new Integer(0));
    }
}

}

1 Ответ

0 голосов
/ 06 сентября 2011

есть атрибут focus в компоненте a4j: support. Требуется идентификатор элемента для установки фокуса после завершения запроса. Поэтому, если вы знаете, каким будет идентификатор входного текста, вы можете установить его здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...