2

单击 JQuery Bootgrid 分页元素中的按钮时,我无法触发事件。我相信我无法正确定位元素,让处理程序知道我点击了分页。我尝试了以下变体和更多:

$(document).on('click', "#grid-footer .button", function () {
   alert("You clicked the pagination button!");
});
$(document).on('click', "#grid-footer a", function () {
   alert("You clicked the pagination button!");
})
$(document).on('click', "#grid-footer a .button", function () {
   alert("You clicked the pagination button!");
})
$(document).on('click', "#grid-footer .pagination", function () {
   alert("You clicked the pagination button!");
})
$(document).on('click', "#grid-footer .pagination > li > a", function () {
   alert("You clicked the pagination button!");
})    

单击分页按钮时,这些都不会触发警报。任何人都可以在单击分页时找出正确的选择器来触发事件吗?这是一个带有最简单的引导网格和分页元素的 jsfiddle

4

1 回答 1

3

我没有使用过 Bootgrid,但我只是快速浏览了文档。您当前的代码不起作用的原因是您在生成内容之前添加了 eventListener。因此,您应该首先添加一个事件侦听器,用于何时加载内容。

在这个 eventListener 中,您可以为您的分页添加一个 eventListener,如下所示;

var rowIds = [];
var grid = $("#grid").bootgrid({
    selection:true,
    multiSelect: true,
    rowSelect: true,
    rowCount: 3 
}).on("loaded.rs.jquery.bootgrid", function(e){
    console.log("Bootgrid Loaded")
    $("#grid-footer .button").on('click', function () {
        alert("You clicked the pagination button!");
    });
});

您可以使用许多事件监听器,请查看文档

这是一个更新的JSFiddle,整个工作正常。

于 2017-05-15T19:11:53.967 回答