kendoui分页-识别更改事件中的“最后寻呼机”点击

时间:2020-01-10 21:15:06

标签: kendo-ui kendo-grid kendo-ui-grid

我目前正在使用Kendo UI版本v2016.2.504中的网格,并且已合并了寻呼机功能。

单击“最后一页”按钮时,我想了解在kendo数据源中使用更改事件时,如何识别源或发件人绝对是“最后一页”按钮。我在“ e”事件或发送者属性中看不到任何可辨别的方式。有人知道吗?

kendouipager

var dataSource = new kendo.data.DataSource({
    data: $scope.datasource,
    pageSize: 15,
    change: function (e) {
        var sender = e.sender; // help
    },
});

1 个答案:

答案 0 :(得分:0)

您可以向按钮添加事件侦听器,然后执行您要在回调中执行的操作,或者引发一个标志并在page事件处理程序中对其进行处理。

请参阅代码段以获取演示。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <title>Kendo UI Snippet</title>

    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2019.3.1023/styles/kendo.default-v2.min.css"/>

    <script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
    <script src="https://kendo.cdn.telerik.com/2019.3.1023/js/kendo.all.min.js"></script>
</head>
<body>
  
<div id="grid"></div>
<script>
  var isLast = false;
  
  $("#grid").kendoGrid({
    columns: [
      { field: "name" },
      { field: "age" }
    ],
    dataSource: {
      data: [
        { id: 1, name: "Jane Doe", age: 30 },
        { id: 2, name: "John Doe", age: 35 },
        { id: 3, name: "John Smith", age: 40 }
      ],
      pageSize: 1,
      schema: {
        model: { id: "id" }
      }
    },
    pageable: true,
    page: function(e) {
      console.log("Page change", e.page);
      console.log("isLast", isLast);
      
      if (isLast) {
      // You can do what you want to do here - option 2
      }
      
      isLast = false;
    }
  });
  
  document.getElementsByClassName("k-pager-last")[0].addEventListener("click", (e) => {
    isLast = true;
    
    // You can do what you want to do here - option 1
  });
</script>
</body>
</html>

相关问题