如何将用户输入的值从/向JSP传递给我使用JSF作为框架?这是我的代码:
<h:dataTable id="dt1" value="#{Ack.list}" var="ack" >
<h:column>
<f:facet name="header">
<h:outputText style=""value=" Number" />
</f:facet>
<h:outputText style="" value="#{ack.number}" ></h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="Acknowledgement"/>
</f:facet>
<h:inputText value="" > </h:inputText>
</h:column>
<h:column>
<h:outputText value=""/>
<h:commandButton action="" value="Submit"></h:commandButton>
</h:column>
</h:dataTable>
我想在为“确认”提供的文本字段中输入一些值,然后单击“提交”按钮。如何在按钮点击时发送用户输入的“确认”?
答案 0 :(得分:2)
首先将属性acknowledgement
添加到类Ack
(至少是表示数据表的每个项目的类,如表的var
属性中所声明的那样)。
public class Ack {
private String acknowledgement;
// Add/generate getter and setter.
}
然后将输入字段绑定到该字段。
<h:inputText value="#{ack.acknowledgement}" />
确保表已经放在<h:form>
内,我还将命令按钮移到表外,一个按钮就足够了。将其action
绑定到支持bean方法。
<h:form>
<h:dataTable ...>
...
</h:dataTable>
<h:commandButton action="#{Ack.submit}" value="Submit" />
</h:form>
最后在bean中定义方法。那时,JSF已经设置了提交的值。您只需将它们保存在数据库中等等。
public String submit() {
ackDAO.save(list);
return "outcome";
}