【发布时间】:2010-04-26 14:02:53
【问题描述】:
下面的代码显示了在我的应用程序中失败的事情。 这是一个快速添加信息的表格,填写表格并提交它,将新条目添加到数据库中并同步我的数据库。这一切都是用 ajax 完成的。第一个表单提交正确发生,但第二个表单无法运行所需的 ActionListener。第二种形式虽然发布到服务器,但未调用 saveAction。正如您将看到的,我是这项技术的真正初学者......如果有人看到问题,那将非常有帮助!
<rich:simpleTogglePanel id="quickaddActivitySimpleToogle"
switchType="client"
opened="false"
label="#{lang.activityModule_quickAdd_panelTitle}">
<p><a4j:form id="quickAddForm">
<h:outputLabel for="activityNameInput"
value="#{lang.activity_name_dp}" />
<h:inputText id="activityNameInput"
value="#{activityController.quickActivityAdd.name}">
</h:inputText>
<rich:spacer width="20px" />
<h:inputHidden id="activityInternalNameInput"
value="#{activityController.quickActivityAdd.internalName}" />
<rich:spacer width="20px" />
<a4j:commandButton id="activityQuickAddFormSubmitBtn"
reRender="activityListTable,quickAddForm"
actionListener="#{activityController.saveActivity}"
value="#{lang.saveBtn_header}" />
</a4j:form></p></rich:simpleTogglePanel>
提前致谢。
ollie314
【问题讨论】:
-
我通过将 simToogglePanel 封装到 a4j:outputPanel 中解决了部分重新渲染问题。现在第二个 ajax 请求正常工作,但表单没有刷新...... Grrr ! :)