ExtJS4中的网格焦点问题

时间:2011-07-22 13:52:25

标签: extjs extjs4 extjs3

我们在您的应用程序中使用ExtJS 4。我们在网格焦点方面存在问题。我们在ExtJS 3中使用grid.getView().focusEl.focus()。现在看来这不起作用。在ExtJS4中替换这个是什么。

1 个答案:

答案 0 :(得分:6)

我帮助你检查了ExtJS3和ExtJS4的差异,主要的变化是focusEl已从gridView元素中删除。

在ExtJS3中,focusEl是视图中的锚链接

<div class="x-grid3-scroller" id="ext-gen10" style="width: 298px; height: 174px; ">
    <div class="x-grid3-body" style="width:100px;" id="ext-gen12">
        <div class="x-grid3-row x-grid3-row-first x-grid3-row-last" style="width:100px;">
            <table class="x-grid3-row-table" border="0" cellspacing="0" cellpadding="0" style="width:100px;">
                <tbody>
                    <tr><td class="x-grid3-col x-grid3-cell x-grid3-td-0 x-grid3-cell-first " style="width: 100px;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-0" unselectable="on">0</div></td></tr>
                </tbody>
            </table>
        </div>
    </div>
    <a href="#" class="x-grid3-focus" tabindex="-1" id="ext-gen13"></a>
</div>

在ExtJS4中,此锚链接不存在

<强>解决方案

这是我为你创建的一个小fiddle test。基本上你需要改变的是:

grid.getView().el.focus();

我们使用整个元素而不是获得focusEl(锚链接)。

希望这可以解决您的问题。