【问题标题】:Kendo UI Grid, How to add parameter to datasource read url and refresh grid?Kendo UI Grid,如何将参数添加到数据源读取 url 和刷新网格?
【发布时间】:2015-03-26 15:19:12
【问题描述】:

我有带有 KendoUI 和 AngularJs 的单页应用程序。我有两个带有两个控制器的网格。当我选择第一个网格行(电影)时,我想将 movieId 传递给第二个控制器并获取这部电影的演员。

这是我的第二个控制器:

myApp.controller("ActorsCtrl", function ($scope, $rootScope) {

    $rootScope.$on("SetMovieId", function (event, movieId) {
        alert(movieId);
        $scope.movieId = movieId;
        $scope.actorsGrid.dataSource.read();
        $scope.actorsGrid.dataSource.refresh();
    });

    $scope.actorsGrid = {
        dataSource: {
            type: "application/json",
            transport: {
                read: {
                    url: "/Actors/GetActors",
                    data: { movieId: $scope.movieId }
                }
            },
            pageSize: 5,
            serverPaging: true,
            serverSorting: true
        },
        sortable: true,
        pageable: true,
        dataBound: function () {
            this.expandRow(this.tbody.find("tr.k-master-row").first());
        },
        columns: [{
            field: "Name",
            title: "Name",
            width: "120px"
        }, {
            field: "BirthDate",
            title: "Birth Date",
            template: "#= kendo.toString(kendo.parseDate(BirthDate, 'yyyy-MM-dd'), 'MM/dd/yyyy') #",
            width: "120px"
        }]
    };
});

这个movieId 添加正确吗? 如何刷新网格? 我的例子不起作用:(

【问题讨论】:

    标签: angularjs kendo-ui


    【解决方案1】:

    Kendo UI Datasource 具有事件 requestStart,您可以在其中将参数传递给请求 url。

    var urlFormat = "/actors/{0}";
    
    var dataSource = new kendo.data.DataSource({
      transport: {
        read: {
          url: "/actors/",
          dataType: "jsonp"
        }
      },
      requestStart: function(e) {
        e.options.url = kendo.format(urlFormat, movieId);
      }
    });

    【讨论】:

    • "e.options.url = "... 导致:TypeError: Cannot set property 'url' of undefined
    猜你喜欢
    • 1970-01-01
    • 2014-01-13
    • 2014-03-08
    • 2012-09-19
    • 2013-05-04
    • 2012-12-03
    • 2018-03-12
    • 2016-09-01
    • 1970-01-01
    相关资源
    最近更新 更多