0

这是我的代码:

var dataSource = new kendo.data.DataSource({
    transport: {
        read: {
            url: getMembersUrl,
            dataType: "json",
            type: "get"
        }
    },
    serverPaging: true,
    pageSize: 2,
    schema: {
        data: "Data",
        total: "Total",
    }
});

当我在数据源上调用 read 时,它不会将pagesizeor take(我都尝试过)作为请求的一部分发送。我真的在这个问题上摸不着头脑。

4

1 回答 1

0

您的代码工作正常,并且take按预期发送。如果你运行:

var dataSource = new kendo.data.DataSource({
    transport: {
        read: {
            url: "fake",
            dataType: "json",
            type: "get"
        }
    },
    serverPaging: true,
    pageSize: 2,
    schema: {
        data: "Data",
        total: "Total",
    }
});

并定义一个按钮和一个用于触发读取的处理程序:

<button id="read" class="k-button">Read</button>

$("#read").on("click", function() {
    console.log("About to fetch data");
    dataSource.fetch();
});

在这里:http: //jsfiddle.net/OnaBai/34qe4oks/

您将在浏览器控制台中看到它实际上发送了请求:

在此处输入图像描述

如果您没有看到请求,很可能是因为您实际上并没有从 DataSource 中读取数据(请记住,Grid 数据源是在 Grid 完成初始化时读取的)

于 2014-08-27T00:06:47.670 回答