在 dataTable 中进行 primeFaces ajax 调用

发布于 2024-11-07 07:05:49 字数 292 浏览 3 评论 0原文

我将 JSF 2 与 PrimeFaces 2.2 一起使用。我尝试通过数据表中的选择框 onchange 事件进行 ajax 调用。我能够看到 System.outs 打印,但是我看不到 update 属性中给出的组件正在更新。我已在 update 属性中给出了 dataTableId。

我想现在的问题是选择框再次被填充并且进行了 ajax 调用。我们是否应该在 update 属性中只提供父标签,以使 ajax 调用正常工作。请帮我解决这个问题。

I am using JSF 2 with PrimeFaces 2.2. I tried making an ajax call through a select box onchange event in a dataTable. I was able to see the System.outs printing but, I could not see the components given in the update attribute getting updated. I have given the dataTableId in the update attribute.

I guess the problem now is the selectbox is getting populated again and an ajax call is made. Should we give only the parent tags in the update attirbute, for the ajax call to work. Please help me out in this.

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

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

发布评论

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

评论(1

暗喜 2024-11-14 07:05:49

update 属性中的 ID 不是以 : 开头时,它会相对于同一个 NamingContainer 组件。但由于 h:dataTable 一个 NamingContainer 组件,因此您需要通过绝对 ID 来引用它。在 Web 浏览器中右键单击 JSF 页面并选择“查看源代码”以查看生成的 HTML DOM 树。找到由 生成的 HTML 元素,确定其 id 属性的值并使用正是 update 属性中的 ID,前缀为 :

When the ID in the update attribute does not start with :, it becomes relative to the ID of the current component inside the same NamingContainer component. But since the h:dataTable is an NamingContainer component, you need to reference it by an absolute ID. Rightclick the JSF page in the webbrowser and choose View Source to see the generated HTML DOM tree. Locate the HTML <table> element which is generated by the <h:dataTable>, determine the value of its id attribute and use exactly that id in the update attribute, prefixed with :.

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