Javascript 如何覆盖RichFaces 4.1.0的popupanel.js中的函数?

Javascript 如何覆盖RichFaces 4.1.0的popupanel.js中的函数?,javascript,richfaces,Javascript,Richfaces,我对RichFaces弹出面板有问题。我需要在弹出窗口中的第一个输入元素打开后立即设置焦点。然后,用户必须能够使用键盘遍历弹出窗口中的所有输入元素。目前我正在使用RichFaces 4.1.0 在浏览了不同的论坛之后,我知道这是RichFaces4.1.0中的一个bug,它已经在RichFaces4.2.3版本中修复。Jboss社区已经通过修改popupanel.js文件的函数processAllFocusElements解决了这个bug 我现在无法迁移到RichFaces 4.2.3。那么,如

我对RichFaces弹出面板有问题。我需要在弹出窗口中的第一个输入元素打开后立即设置焦点。然后,用户必须能够使用键盘遍历弹出窗口中的所有输入元素。目前我正在使用RichFaces 4.1.0

在浏览了不同的论坛之后,我知道这是RichFaces4.1.0中的一个bug,它已经在RichFaces4.2.3版本中修复。Jboss社区已经通过修改popupanel.js文件的函数processAllFocusElements解决了这个bug

我现在无法迁移到RichFaces 4.2.3。那么,如何覆盖 函数处理所有FocusElements,以便它能够正确地为我使用RichFaces 4.1.0本身工作


谢谢。

一种可能是修补RichFaces jar文件,并用4.2.3中的文件替换popupanel.js

可能更简单的方法是:将4.2.3
popupanel.js
文件(从中删除不需要的部分)放入项目文件夹,并以加载自定义Java脚本的方式加载它(我想使用
h:outputScript
)。 基本上4.1.0
popupanel.js
仍将执行,但随后您的4.2.3版本将执行并覆盖结果

单个方法的简单重写可能如下所示:

jQuery.extend(RichFaces.ui.PopupPanel.prototype, {
    processAllFocusElements: function(root, callback) {
        ....
    }
}