KendoGrid弹出编辑窗口,Form字段使用jquery设置焦点

时间:2014-08-18 18:24:35

标签: kendo-grid form-fields kendo-window

上下文:kendoGrid,其中编辑设置为弹出窗口。打开一个包含字段的弹出窗口,在这种情况下,编辑窗口的模板是自定义的JS逻辑等。已按所需顺序为所有字段设置tabindex值,并在第一个字段上设置自动对焦领域。我有自定义JS,它在网格的Edit事件上运行,以便在窗口弹出时定位和调整窗口大小:function editWindowLocation(e)

观察:如果表单和字段是静态的,那么使用JS代码就相对简单:document.formName.fieldName.focus();

问题:窗口弹出后,新窗口有焦点。当按下Tab键时,它会将焦点发送到窗口上的按钮(更新/取消)以后更多标签,它会到达字段。如何让弹出窗口中的第一个字段聚焦,因此tabbing会将焦点设置为其索引设置顺序中的其他字段?

1 个答案:

答案 0 :(得分:-1)

解决方案:在function editWindowLocation(e)结束时,我添加了一些代码来查找第一个tabindex并将焦点设置为它。

setTimeout(function () {
    $("input[tabindex=1]").focus();
}, 1000);

为什么要说超时? kendoWindow以某种方式覆盖了.focus()事件,并将焦点放在div kendoWindow上。但是当在超时完成时,它按预期工作。不知道为什么会这样,但这对我有用。

希望这可以帮助有类似问题的人。