按下回车键,在jsf中的inputtext标签中调用bean类中的方法

时间:2017-05-24 16:26:29

标签: jsf

具有inputtext字段的Jsf文件。在字段中输入值并按Enter后,它应该在命令按钮(nextButton)中执行操作,即在BackingBean.java中调用Action()

<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:c="http://java.sun.com/jstl/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:a4j="https://ajax4jsf.dev.java.net/ajax">

    <ui:define id="content" name="page-content">
    <h:inputText id="Number" value="#{BackinBean.Id}"/>
    </ui:define>

    <ui:define id="contentfooter" name="page-content_footer">

        <table width="100%">
            <tr>
                <td>
                    <h:commandButton id="nextButton" value="Next"
                        action="#{BackinBean.Action}" styleClass="btn"/>
                </td>
            </tr>
        </table>
    </ui:define>

Bean class-BackingBean.java有

    public Action(){..........}

2 个答案:

答案 0 :(得分:0)

您的代码没有form标记,而您的commandButton没有process属性。

研究这个权威指南:Understanding PrimeFaces process/update and JSF f:ajax execute/render attributes

答案 1 :(得分:0)

实现此目的的一种方法是,您需要捕获键码并检查它是否是输入事件(keycode = 13)并触发所需按钮上的点击事件,该事件将提交表单并调用相关的支持bean操作方法。请参阅Default action to execute when pressing enter in a form