【问题标题】:Pass parameter as query string to kendo datasource create method将参数作为查询字符串传递给 kendo 数据源创建方法
【发布时间】:2014-02-28 16:04:20
【问题描述】:

场景:考虑我们有两个视图模型使用相同的数据源masterDataSource,我们想将detail 实体添加到master 实体。

问题:如何将 masterId 作为查询字符串从这些视图模型传递给数据源的 create 方法:

var masterDataSource = new kendo.data.DataSource({
    transport: {
        create: {
            url: function() {
                return "/api/master/addItem?masterId=" + masterId;//<-- How to pass masterId form view-models
            },
            dataType: "json",
            type: "POST"
        },
    },

    schema: {
        model: {
            id: "id"
        }
    }
}

【问题讨论】:

  • 我不知道你所说的“帖子正文”是什么意思。你的意思是你想发布一些数据而不是在查询字符串中传递它?
  • 你试过data:yourjsonobject
  • @RickS 我没有问题将数据传递给数据源,实际的问题是我如何从两个视图模型中将masterId 传递给url
  • 这让我很困惑,因为您的代码没有显示任何使用您的视图模型的尝试。您是在问如何从视图模型中获取 masterId 并将其传递给查询字符串?
  • @RickS 实际上我不想从视图模型中获取 masterId 并且不希望数据源依赖于视图模型。我希望视图模型将masterId 传递给数据源。所以我可以让许多视图模型使用数据源。

标签: kendo-ui kendo-mvvm kendo-datasource


【解决方案1】:

我找到了这个解决方案:

var dynamicUrl = "/api/master/addItem?masterId=" + masterId;
masterDataSource.transport.options.read.url = dynamicUrl;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-27
    • 1970-01-01
    • 1970-01-01
    • 2014-03-03
    • 2016-08-13
    • 1970-01-01
    相关资源
    最近更新 更多