【问题标题】:Handling Browser compatibilties with ADF处理与 ADF 的浏览器兼容性
【发布时间】:2015-11-01 11:50:52
【问题描述】:

我正在尝试为 ADF 可编辑表中的输入框捕获“ENTER”键的按键事件。我添加了客户端侦听器和服务器侦听器,并在 af:resource 标记中添加了输入框的 JavaScript 代码。

要求如下—— 我有一个共有 6 列的可编辑表,但只有第一列和最后一列是可编辑的。因此,当用户在第一列中输入一个值并点击回车时,我需要从其他一些业务组件中填充一些数据并填充其他列。

我能够捕获 enter keypress 事件,但是当我在调用服务器端方法后使用 chrome 时,行焦点会自动移动到表中的下一行。 有人可以告诉我如何在桌子上停止这个。这仅在 chrome 中发生。该代码在 Firefox 和 IE 中运行良好。

【问题讨论】:

    标签: oracle-adf jdeveloper


    【解决方案1】:

    您可以根据要求通过 javascript 将焦点设置在您需要的字段上。但是您需要知道要设置焦点的组件的客户端 ID。 在您的事件处理程序中调用它:

    String clientId = ...
    String script = "AdfPage.PAGE.findComponent('" + clientId + "').focus();";
    FacesContext context = FacesContext.getCurrentInstance();
    Service.getRenderKitService(context,
        ExtendedRenderKitService.class).addScript(context, script);
    

    script 将在处理响应时在客户端上调用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多