【问题标题】:XPages Button on page will not fire页面上的 XPages 按钮不会触发
【发布时间】:2013-06-12 14:21:51
【问题描述】:

我有一个带有按钮的 XPage,无论代码多么简单,它都不会执行任何操作。没有出现错误,日志中没有任何内容告诉我为什么它不起作用。

这是什么都不做的测试按钮:

        <xp:button value="Print" id="button4">
            <xp:eventHandler event="onclick" submit="true"
                refreshMode="complete">
                <xp:this.action><![CDATA[#{javascript:context.redirectToPage("invoices_page1_doc.xsp");}]]></xp:this.action>
            </xp:eventHandler>
        </xp:button>

我没有看到代码不允许此按钮触发。

我正在使用扩展库 ApplicationLayout 控件,该控件对其进行了一些自定义,但不确定为什么它会限制 XPage 上的按钮不起作用。

我确实在页面源中注意到浏览器中似乎没有“a href”或“onclick”参数。位置栏操作已正确呈现,但 XPage 面板中的按钮似乎未呈现:

<button class="lotusBtn" type="button" name="view:_id1:_id2:OneUIMainAreaCallback:button4" id="view:_id1:_id2:OneUIMainAreaCallback:button4">Print</button>

我不知道在哪里可以打开它。

感谢任何帮助。

谢谢! 丹

【问题讨论】:

  • 嗯..在我的笔记中(以及其他人的猜测)按钮工作正常。(例如未找到项目)你在说什么自定义?您的页面来源按钮似乎没问题,但请检查您的页面上是否有类似以下代码:XSP.attachEvent("view:_id1:_id18", "view:_id1:button4", "onclick", null, true, 2);
  • 碰巧你用的是火狐?如果是这样,您是否清除了缓存并重新启动它?我偶尔会遇到 FF 和按钮不触发的问题,这通常会在一段时间内解决。我发现如果我使用 Firebug 会更频繁地发生这种情况,所以这可能是另一个值得考虑的问题。
  • 我可以向您保证,这不是 ExtLib 布局控件的问题。我也在使用它,没有任何问题。但是:您能否确保其他代码不会影响您的 DOM,尤其是。提交表单元素,即触发事件代码。也许只需在按钮下方放置一个脚本,例如 如果表单元素在 DOM 中仍然可以访问,它应该显示类似 [Object] 的内容.
  • 我正在尝试使用 SSJS,我什至尝试了一个简单的 _dump() 语句,它不会打印到 log.nsf。我已经重新启动了 Firefox,清除了缓存并让管理员也重新启动了服务器。
  • 你能用 SSJS 计算值创建一个&lt;xp:text&gt; 吗?如果是,请尝试将 Package-Explorer 转到 Local/xsp/ 并检查是否有 YourXPageName.java 文件并检查其中的代码以获取按钮和事件处理程序。

标签: xpages xpages-extlib


【解决方案1】:

事件处理程序是使用 XSP 对象添加到页面末尾的,因此不会有任何带有链接的 JS 或 URL。如果该代码正在加载,请检查 Firebug。

【讨论】:

    【解决方案2】:

    我知道这是一篇旧帖子,但如果有人遇到类似问题,请务必检查页面上其他任何地方是否有任何验证检查可能失败。如果有,绕过检查,在您的事件处理程序上检查“不验证或更新数据”,如果该操作不依赖于任何数据,或者将执行模式设置为部分并仅包括必要的页面部分。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-15
      • 2014-11-25
      • 1970-01-01
      • 1970-01-01
      • 2012-09-06
      • 2021-07-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多