2

您不能 <TAB> 进入编辑/删除/页面导航的图标和 <ENTER> 来执行相应的操作。当您在不同的“可操作”项目(例如链接、输入元素)上时,这些图标不会获得焦点。如何实现这种行为?

4

1 回答 1

0

我不确定这是否回答了您的问题,但我遇到了类似的问题。这就是我最终要做的。在我的链接格式化程序中,我将链接更改为按钮,并且现在可以使用 kepboard 导航和驱动。

在下面显示的“姓氏”的 colModel 中,我有一个“lastNameFormatter”的链接格式化程序

        colModel: [
        { name: 'RequestDate', index: 'RequestDate', search: false, width: 110, fixed: true, editable: false, align: 'left', cellStyle:'padding-left:5px', title: false, formatter: ndateFormatter },
        { name: 'LastName', index: 'LastName', search: false, width: 110, title: false, formatter: lastNameFormatter },
        { name: 'DlNum', index: 'DlNum', search: false, width: 130, align: 'left', title: false },
        { name: 'DlState', index: 'DlState', search: false, width: 50, align: 'left', title: false },
        { name: 'UserName', index: 'UserName', search: false, width: 180, align: 'left', title: false, resizable: true },
        { name: 'AuthCode', index: 'AuthCode', search: false, hidden: false, width: 85, sortable: false, formatter: viewLinkFormatter, align: 'left', title: true},
        { name: 'ProbationDescription', index: 'ProbationDescription', search: false, sortable: false, hidden: true, title: false}
    ],

然后执行以下操作:

function lastNameFormatter(cellval, opts, rwdat, _act) {
var probationDescription = rwdat.ProbationStatusDescription;
if ((probationDescription == null) ||
    (probationDescription.toLowerCase() == "accepted")) {
    return "<button type='button' class='jqGridButton' onclick='submitView(\"" + rwdat.AuthCode + "\"); return false;' >" + cellval + "</button>";
} else {
    return cellval;
}

所以......在这里使用一个按钮似乎可以解决jqGrid链接的键盘导航问题。

也许不是一个确切的答案,但希望你在这里找到一些有用的东西。

于 2014-05-27T19:12:15.983 回答