gpt4 book ai didi

jsf-2 - 在 ui :repeat is not processed during form submit 中动态添加输入字段

转载 作者:行者123 更新时间:2023-12-04 00:46:49 25 4
gpt4 key购买 nike

我正在尝试为我的应用程序中的答案创建一个输入表单,我从四个“空”答案开始, View 循环并为其创建输入字段。我有一个添加答案按钮,我将一个问题添加到答案数组中,然后 View 再次呈现答案,但现在有一个额外的输入字段。支持 bean 是 View 范围的。但是,如果我在不按添加答案按钮的情况下提交表单,则一切正常。数据保存在数据库中。但是,如果我在填写完四个后添加一个答案,那么最后一个不会从输入字段 (answer.description) 中获取数据。如果我先按添加答案(不填写任何输入字段),则根本不会捕获字段中的数据,将所有 5 个留空,因此数据库中不会保存任何数据。

我的形式是这样的:

        <ui:repeat var="answer" value="#{bean.answers}">
<div class="field">
<h:outputLabel for="answerAlternative-#{answer.serialNumber}"
value="Svaralternativ #{answer.serialNumber}" />
<h:inputText id="answerAlternative-#{answer.serialNumber}"
value="#{answer.description}" size="40" />
</div>
</ui:repeat>

这是创建新输入框的方法:

public String addAnswer() {
if (answers.size() + 1 < 6) {
Answer answer = new Answer();
answer.setSerialNumber(answerSerialNumber + "");
answerSerialNumber++;
answers.add(answer);
}

return null;
}

用于初始化带有四个空输入字段的答案数组:

@PostConstruct
public void initBean() {
answers = new ArrayList<Answer>();

for (int i = 0; i < 4; i++) {
addAnswer();
}
}

最佳答案

这看起来匹配当前问题<ui:repeat>在莫哈拉。是totally broken在莫哈拉。

您基本上有 2 个选择:

关于jsf-2 - 在 ui :repeat is not processed during form submit 中动态添加输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8280168/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com