Xpages 在按钮上设置焦点

Xpages 在按钮上设置焦点,xpages,xpages-ssjs,Xpages,Xpages Ssjs,我有一个简单的xpage,带有2个inputText字段(用户名和密码)和一个按钮 这个想法是,当按下“回车”或“回车”键时,按钮的onclick事件将被激活。我想这通常是通过自动对焦来完成的,但是找不到一种方法让它工作 我认为最好是从js库中定义一个小函数,您可以在每个页面中加载这个函数 function fireButton(e, buttonId) { if (typeof e == "undefined" && window.event) { e

我有一个简单的xpage,带有2个inputText字段(用户名和密码)和一个按钮


这个想法是,当按下“回车”或“回车”键时,按钮的onclick事件将被激活。我想这通常是通过自动对焦来完成的,但是找不到一种方法让它工作

我认为最好是从js库中定义一个小函数,您可以在每个页面中加载这个函数

function fireButton(e, buttonId) {
    if (typeof e == "undefined" && window.event) {
        e = window.event;
    }

    if (e.keyCode == dojo.keys.ENTER) {
        dojo.byId(buttonId).click();
        e.preventDefault();
    }
}
然后在
onkeydown
属性中,您可以调用它:

<xp:inputText onkeydown="fireButton(event, '#{id:buttonId}')"

我无法让它工作,但那可能是我自己…我制作了一个脚本库(给它与函数同名),然后在页面的客户端加载时添加了“导入fireButton”。然后添加了“fireButton(事件),#{id:button1}”)在第二个inputtext字段的onkeydown中,但它不起作用。您是如何在页面中声明库的?您是否打开了浏览器开发人员控制台以查看它在哪里变得异常?我得到:“未捕获引用错误:在HTMLInputElement.onkeydown中未定义fireButton,那么函数似乎没有加载?我该怎么做?对不起,我错了。我将其保存为服务器端javascript库,而不是客户端。它现在工作得很好!(我还更改了名称,使库和函数的名称不同)