【发布时间】:2011-08-31 00:56:42
【问题描述】:
我无法让f:ajax 处理h:panelGroup。
这就是我正在做的事情:
JSF 代码:
<h:panelGroup id="contacts_tab_contacts_list_list">
<h:form>
<ul>
<c:forEach items="#{currentDevice.contacts}" var="contact">
<li>
<f:ajax event="click" onevent="logcheck()">
<h:panelGroup layout="block"
styleclass="contacts_tab_contacts_list_quickview_box" >
<h:outputText value="#{contact.firstName} #{contact.familyName}" />
</h:panelGroup>
</f:ajax>
<f:ajax event="click" onevent="logcheck()">
<f:param value="#{contact.getUUID}" name="currContactUUID" />
<h:commandButton value="#{contact.firstName} #{contact.familyName}"
styleclass="contacts_tab_contacts_list_quickview_box" />
</f:ajax>
</li>
</c:forEach>
</ul>
</h:form>
</h:panelGroup>
它在网页上的样子:(忽略愚蠢的格式:-))
最后,页面的来源是什么样的:
<li>
Name - 35 Family - 35
<input
id="j_id594943238_6609edf4:j_id594943238_6609ec58"
name="j_id594943238_6609edf4:j_id594943238_6609ec58"
type="submit"
value="Name - 35 Family - 35"
onclick=".. removed .." />
</li>
(注意h:panelgroup 是如何被li 元素“吞噬”的。)
我可以点击h:commandButton,它工作正常。
当我单击文本时没有任何反应,这是有道理的,因为从查看源代码看来,h:panelGroup 和 f:ajax 已经消失了!
就是这样。抱歉篇幅太长,但我想了解所有细节。 感谢您的帮助:-)
【问题讨论】: