我一直在尝试JSF和ui:repeat来创建一个简单的动态表。 我在这个过程中的下一步是允许表格中的每个单元格都是可点击/编辑的,并开始在 h:outputlabel 周围绑定 f:ajax。 这是我的困境开始的地方,因为我希望整个单元格都是可点击的,而不仅仅是单元格的内容/文本,而且我还没有找到让单元格响应 ajax 点击的方法。
我一直在做很多搜索,但没有找到我需要的方向,也没有找到JSF专家说"这是不可能的"。
所以,我的问题是:
- 是否有可以使用的 JSF 组件可以与 F:Ajax 标记一起使用,也可以格式化以适应表格单元格?
- 有没有办法使实际的表单元格单击事件与 F:ajax 标签或类似的东西一起使用。
一如既往地感谢您的意见和建议!
问候
话筒
没有标准的 JSF 组件生成具有 onclick
属性的<td>
。
最好的办法是在表格单元格中包含<h:commandLink>
,并通过将其 CSS display
属性设置为 block
来让它跨越表格单元格的整个空间。
<td>
<h:commandLink ... style="display:block;">
<f:ajax ... />
<h:outputLabel ... />
...
</h:commandLink>
</td>
(请注意,最佳做法是在单独的.css
文件中指定 CSS 类并改用styleClass
;以上只是检查)
这给最终用户的印象是整个表格单元格都是可单击的。