【发布时间】:2012-11-13 22:48:08
【问题描述】:
背景:具有多个数据源的 Xpage。选项卡式表格的每一行都包含一个编辑面板,该面板绑定到与主页不同的数据源。每个页面都包含一个用于输入新文档的表格。这些文档是主文档的子文档。有一个视图控件可以立即显示用户创建的文档。表格中的按钮除了添加一些控制字段外,还保存了文档。它对editPanel 进行部分刷新。
最近我为条目表中的字段添加了验证。我使用一个功能,并防止从按钮以外的任何东西进行更新。我正在使用这篇博文中的 Tommy Valand 方法:http://dontpanic82.blogspot.com/2010/03/xpages-making-validation-behave.html。如果我不使用 Tommy 的方法,那么验证器会在切换选项卡时触发,并且无用。
所有这些都有效,但我遇到了以下问题。 1)我必须按两次按钮才能触发部分刷新。不仅如此,验证消息在按下按钮两次之前不会触发。在添加验证之前,第一部分仍然是一个问题。 2) 刷新确实发生后表值不清除。这曾经在添加验证之前起作用。现在清除这些值的唯一方法是完全刷新 (F5)。
我真的只需要部分刷新才能表现得像它应该的那样。非常感谢任何帮助。
【问题讨论】:
-
您熟悉 Firefox 的 Firebug 插件吗?您是否检查过第一个“什么都不做”的请求是否向服务器发送了请求?
-
Tommy,我没用过那个工具。我必须使它适用于 IE,因为这是这里的标准。我将不得不将它添加到我的工具箱中。我 99% 确定在第二次点击之前该请求会被忽略。您认为使用 Dojo 日期选择器与它有什么关系吗?
-
Tommy,我安装了 Firefox 和 Firebug。这是似乎发生的事情。第一次单击时,确实发生了 POST,但没有错误消息。在后续单击时,会触发错误消息,但不会报告。 POST 在通过验证之前不应该永远不会发生。
-
此外,删除 Dojo 数据选择器也没有任何区别。我只提到它是因为在我添加它之后,xpages 表现得很奇怪,就像在数据选择器之后添加任何新元素一样,无论我的光标放在哪里。
-
我提到Firebug的原因是它很容易调试对服务器的请求。关于帖子。该页面必须将数据发布到服务器进行验证(除非您使用客户端验证,我没有经验)。你的意思是第一次点击发送POST,但第二次没有?如果您尝试使用其中一个选项卡式面板的内容创建一个 test-xpage,这是否按预期工作?我已经有一段时间没有使用选项卡式面板了,所以我不记得它们有什么问题。
标签: xpages