a4j: h:inputText 值更改后的支持不起作用

发布于 2024-11-02 20:14:44 字数 632 浏览 1 评论 0原文

谁能弄清楚为什么 h:outputText 在 inputText 值更改后没有刷新? 我已经尝试了 onkeyuponchange ,两者都没有影响。

当我做一些其他使页面刷新的事情时, h:outputText< /code> 已正确渲染,因此只需让 ajax 实际重新渲染组件即可。

<h:inputText autocomplete="off" styleClass="propertyInput"
    value="#{activesyncDM.userNameDomain}" validator="#{activesyncDM.validate}"
    id="userNameDomain" dir="ltr">
    <a4j:support event="onkeyup" reRender="domainNameSlash"/>
</h:inputText>
<h:outputText id="domainNameSlash" value="\\"  rendered="#{!empty activesyncDM.userNameDomain}"/>

谢谢!!

can anyone figure out why the h:outputText doesn't get refreshed after inputText value change?
I've tried both onkeyup and onchange and both don't affect..

When I do some other thing that makes the page refresh, the h:outputText is rendered correctly so it's only a matter of getting the ajax to actually rerender the component.

<h:inputText autocomplete="off" styleClass="propertyInput"
    value="#{activesyncDM.userNameDomain}" validator="#{activesyncDM.validate}"
    id="userNameDomain" dir="ltr">
    <a4j:support event="onkeyup" reRender="domainNameSlash"/>
</h:inputText>
<h:outputText id="domainNameSlash" value="\\"  rendered="#{!empty activesyncDM.userNameDomain}"/>

Thanks!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

烙印 2024-11-09 20:14:44

除了 Cristian 提到的为 a4j:support 添加 ajaxSingle="true" 之外,JSF 渲染的 HTML 代码中的 id 属性可能不会与您在 中设置的 ID 值相同。 Richfaces 提供了一个函数 rich:clientId('id') 来获取 JSF 生成的这些动态 ID。该函数通过 EL 表达式调用。

因此,您可以尝试:

besides putting ajaxSingle="true" for a4j:support which is mentioned by Cristian , the id attribute in HTML code rendered by the JSF may not be the same as the ID value you set in <h:outputText> . Richfaces provides a function rich:clientId('id') to get these dynamic ID generated by JSF . This function is invoked via the EL expression.

So , you can try :

<a4j:support event="onkeyup" ajaxSingle="true" reRender="#{rich:clientId('domainNameSlash')}"/>

短暂陪伴 2024-11-09 20:14:44

您必须将 inputText 的值发送到支持 bean,以便 outputText 反映更改,因此您应该输入: ajaxSingle="true" for a4j:support

You have to send the value of inputText to the backing bean in order the outputText to reflect the changes so you should put: ajaxSingle="true" for a4j:support

<a4j:support event="onkeyup" ajaxSingle="true" reRender="domainNameSlash"/>

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文