Jsf 刷新p:点击按钮后输入文本内容
我正在实施简单的登记表。带有输入和标签的表格放置在p:dialog中,该对话框位于h:form中。其中一个功能是自动生成字母数字密码。我想在点击相同形式的按钮后更新密码p:inputText的值。每次按下按钮时都会调用Generating方法(我可以在控制台日志中看到生成的字符串)。该问题与未正确更新的inputText标记有关。打开对话框后,我只能刷新密码inputText一次,下次方法被激发,但inputText不会更新。代码如下: 字母数字密码生成器方法:Jsf 刷新p:点击按钮后输入文本内容,jsf,primefaces,xhtml,Jsf,Primefaces,Xhtml,我正在实施简单的登记表。带有输入和标签的表格放置在p:dialog中,该对话框位于h:form中。其中一个功能是自动生成字母数字密码。我想在点击相同形式的按钮后更新密码p:inputText的值。每次按下按钮时都会调用Generating方法(我可以在控制台日志中看到生成的字符串)。该问题与未正确更新的inputText标记有关。打开对话框后,我只能刷新密码inputText一次,下次方法被激发,但inputText不会更新。代码如下: 字母数字密码生成器方法: public static St
public static String randomPassword(){
return RandomStringUtils.randomAlphanumeric(PASSWORD_LENGTH);
}
新帐户模式:
@Named
@ViewScoped
public class AccountModel implements Serializable {
private Account Account = new Account();
public Account getAccount() {
return account;
}
public void setAccount(Account account) {
this.account = account;
}
}
ViewScope AddUserBean中的密码修复方法:
public void generateRandomPassword() {
accountModel.getAccount().setPassword(PasswordGenerator.randomPassword());
LOGGER.info(MessageFormat.format("Random password generated: {0}", accountModel.getAccount().getPassword()));
}
JSF表单片段:
<p:column>
<p:inputText id="userPassword" value="#{accountModel.account.password}" styleClass="fullWidth" />
</p:column>
<p:column>
<p:commandButton id="randomPasswordButton" update="userPassword">
<p:ajax event="click" listener="#{addUserBean.generateRandomPassword}" update="userPassword" />
</p:commandButton>
</p:column>
问题是:我应该使用什么样的更新来进行正确的密码输入文本刷新(每次我按下按钮,而不是仅一次)?请创建一个。PrimeFaces命令按钮已经ajaxified了。请参阅文档和showcase@VasilLukach当前位置根据您的要求,为什么需要这个?