在脚下单击回车时显示隐藏的细节
Show hidden detail when clicking enter in footable
我正在尝试将一些简单的功能应用于脚。我有一个脚,你可以通过行。在每一行,我希望能够单击 Enter 以展开当前选定行的隐藏内容/详细信息,但我在找到单击功能和添加按键输入时遇到了一些问题。
这是目前我添加的一些jquery,但这不会工作,因为HTML是从javascript渲染的,这意味着在我用鼠标单击该行之前不会呈现隐藏的内容:
$("tbody").delegate("*", "focus blur", function () {
var elem = $(this);
setTimeout(function () {
elem.toggleClass("focused", elem.is(":focus"));
}, 0);
});
$('.footable > tbody > tr').keypress(function (e) {
if ($(this).hasClass("focused") && e.which == '13') {
//alert('test');
$('.footable-row-detail').css({ "display": "table-row" });
}
});
根据第一个示例,也对keypress
事件使用委托事件处理程序:
$('.footable > tbody').on('keypress', '> tr', function (e) {
if ($(this).hasClass("focused") && e.which == '13') {
//alert('test');
$('.footable-row-detail').css({ "display": "table-row" });
}
});
只要 .footable
表元素始终存在,事件就会冒泡到那里的事件处理程序。然后将'> tr'
选择器应用于气泡链中的元素。这意味着该行只需要在事件时匹配。
如果footable
表本身是动态的,请将祖先向上移动到更永久的位置。 如果没有其他更近/更方便的东西,则document
是默认值(切勿将body
用于委托事件,因为它存在由样式引起的错误):
$(document).on('keypress', '.footable > tbody > tr', function (e) {
if ($(this).hasClass("focused") && e.which == '13') {
//alert('test');
$('.footable-row-detail').css({ "display": "table-row" });
}
});
找出问题所在。
$table.find(opt.toggleSelector).unbind('keypress').keypress(function (e) {
if ($(this).hasClass('focused') && e.which == 13) {
//alert('You pressed enter!');
$(this).trigger(trg.toggleRow);
}
});
相关文章:
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 显示5秒后隐藏潜水
- 在不使用JQuery的情况下隐藏DOM中的选定元素
- 剑道UI内联编辑:如何在点击其他按钮时隐藏按钮
- 浮动页脚栏-使用Bootstrap隐藏
- 在jquery中为显示/隐藏设置cookie
- 单击按钮后如何逐个调用分区,上一个分区将隐藏
- 从var向代码隐藏函数传递值
- Image赢得't隐藏在滚动jQuery上
- 具有rowGrouping的数据表无法隐藏列
- Jquery隐藏未触发
- JavaScript 检查隐藏字段中的值并将其设置为隐藏字段值
- 分部隐藏在jquery中不起作用
- 点击后隐藏潜水?(但如果Div是一面旗帜呢?)
- 在脚下单击回车时显示隐藏的细节
- 如何隐藏细节在jquery ajax从浏览器页面源
- 点击一个按钮来显示和隐藏细节
- JQuery数据表:显示/隐藏多个表的行细节
- 显示和隐藏细节,点击一个部门
- 剑道UI细节网格隐藏列