Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在jquery中检查div是否集中?_Jquery_Asp.net Mvc 3_Html_Kendo Grid - Fatal编程技术网

如何在jquery中检查div是否集中?

如何在jquery中检查div是否集中?,jquery,asp.net-mvc-3,html,kendo-grid,Jquery,Asp.net Mvc 3,Html,Kendo Grid,我试图在视图中使用剑道网格,我想在按下enter键后在网格中创建新行。我可以通过编写以下代码来实现这一点: <div id="GridContainer"> <div id="grid"></div> </div> $(document.body).keypress(function (e) { if (e.keyCode == 13) { var grid = $("#grid").data("kendoGrid");

我试图在视图中使用剑道网格,我想在按下enter键后在网格中创建新行。我可以通过编写以下代码来实现这一点:

<div id="GridContainer">
<div id="grid"></div>
</div>

$(document.body).keypress(function (e) {
    if (e.keyCode == 13) {
        var grid = $("#grid").data("kendoGrid");
        grid.addRow();
}
});

$(document.body).按键(函数(e){
如果(e.keyCode==13){
var grid=$(“#grid”).data(“kendoGrid”);
grid.addRow();
}
});
问题是,在页面上,每当我按enter键时,都会创建新行。但我只想在网格被聚焦的时候。我该怎么做?我试图将焦点应用于包含网格的div,但没有成功。为了便于阅读,我跳过了生成剑道网格的代码。谢谢。

试试这个

HTML

<div id="grid" tabindex="0"></div>
阅读 及

已更新

焦点
在添加
后再次显示
div
,如

$(document.body).keypress(function (e) {
    if (e.keyCode == 13 && $("#grid").is(':focus')) {
        var grid = $("#grid").data("kendoGrid");
        grid.addRow();
        $("#grid").focus();
    }
});

你能再帮我一点忙吗?我需要在每次按enter键时创建新行。但对于当前代码,按一次后,它不会创建任何行。如果我没有错的话,那就是失去了网格的焦点。如何保持焦点?意味着您希望
行的
添加
触发
仅一次?不,我希望在用户每次按下enter按钮时触发事件,但仅在用户使用网格时,即网格处于焦点。当
div#grid
处于焦点时,上述代码将工作
。测试上述代码,我已对其进行了更改,
$(document.body).keypress(function (e) {
    if (e.keyCode == 13 && $("#grid").is(':focus')) {
        var grid = $("#grid").data("kendoGrid");
        grid.addRow();
    }
});
$(document.body).keypress(function (e) {
    if (e.keyCode == 13 && $("#grid").is(':focus')) {
        var grid = $("#grid").data("kendoGrid");
        grid.addRow();
        $("#grid").focus();
    }
});