0

我是 JSF 和 EL 的新手,想知道是否有办法使用 EL 来获取 h:inputText 字段的当前值。我做错了吗,还是有可能?

谢谢,-本

4

2 回答 2

1

我真的不明白你在找什么......

使用此代码:

<h:form id="myForm">
    <h:inputText id="myInput" value="#{myBean.myValue}"/>

在创建 HTML 页面时,输入字段的值将等于bean myBean的myValue属性的值。

如果用户更改了值,JSF 将在提交表单时自动更新myBean.myValue的值。

如果需要在客户端获取输入的值,即使用Javascript,则需要执行以下代码:

<script type="text/javascript">
    function getInputTextValue() {
        var valueOfInput = document.getElementById("myForm:myInput").value;
    }
</script>

请注意,您必须在 ID 前面加上包含输入的表单 ID ("**myForm:**myInput")。

于 2009-09-01T07:45:42.037 回答
1

(根据您的评论)如果您想在服务器端验证它,那么您应该查看像Richfaces这样的 Ajax 库。

然后,您可以轻松地将 ajax 调用添加到您的输入字段

<h:inputText id="myInput" value="#{myBean.myValue}">
   <a4j:support event="onchange" ajaxSingle="true"/>
</h:inputText>

当您更改文本时,Ajax 调用将在服务器端更新您的模型。如果您有验证器,则可以将其添加到 inputText 标记或使用支持标记上的 action 属性来调用另一个方法。

于 2009-09-01T18:02:37.063 回答