当我在xpage中添加普通<form>
元素时,寻呼机不再工作,意味着我无法切换到其他页面(点击“下一步”或其他内容)。
这是重要的部分:
<xp:pager id="newsPager" for="newsList" pageCount="4" partialRefresh="true">
//pager stuff.....
</xp:pager>
<form action="#">
//form stuff... contents not important for my issue, I tested it
</form>
当我完全排除表单时,它可以正常工作
我在Windows 7上使用Domino Designer 8.5.3
“newsList”是重复控制的ID
答案 0 :(得分:5)
使用表单组件:
,而不是使用passthru表单<xp:form action="#">
// form contents
</xp:form>
这样可以防止其他内容被表单标记包围,这也会破坏事件和数据提交,因此您需要以自己的形式包围其余内容:
<xp:form>
<xp:pager id="newsPager" for="newsList" pageCount="4" partialRefresh="true">
//pager stuff.....
</xp:pager>
<xp:repeat id="newsList">
//repeat contents
</xp:repeat>
</xp:form>
注意:不要将嵌套表单互相包含在内;这会混淆浏览器,这就是您当前设计无法正常运行的原因。相反,识别页面的离散部分,可以安全地将其视为单独的表单,并将每个部分包装在自己的表单组件中。
答案 1 :(得分:0)
XPage渲染器会自动向页面添加表单,除非您在Xpage的属性中禁用了此表单。
此表单用于处理所有部分刷新和向后端提交值。当您添加自己的表单标记时,寻呼机(或任何xpage组件)使用的部分刷新不再具有与服务器通信所需的正确信息。
如果您确实需要拥有自己的表单标记,那么我会建议在包含您表单的外部页面中加载iFrame。
答案 2 :(得分:0)