如何在jquery中检查div是否集中?
我试图在视图中使用剑道网格,我想在按下enter键后在网格中创建新行。我可以通过编写以下代码来实现这一点:如何在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");
<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();
}
});