【问题标题】:Kendo - creating a custom model property with value from server propertyKendo - 使用来自服务器属性的值创建自定义模型属性
【发布时间】:2013-10-08 15:30:45
【问题描述】:

我有一个名为 Copies 的属性,它在服务器上定义,表示允许的默认副本数。我可以更新这个值,它会更新我的 UI 上的输入字段。

但是,如果用户在 UI 上重置此字段,我希望能够将 Copies 属性重置为原始值。

我的想法是在我的 kendo 数据源模型上定义一个名为 originalValue 的自定义属性,该属性引用 Copies 属性。但如果我做这样的事情,这似乎会覆盖 Copies 属性。

schema: {
            data: 'd',
            total: function (data) {
                return data.d.length;
            },
            model: {
                originalCopies: "Copies"
            }
        }

我怎样才能创建一个像这样的自定义属性,它基本上是我的 Copies 属性的不可变克隆?

【问题讨论】:

    标签: kendo-ui kendo-grid


    【解决方案1】:

    您可以尝试在服务器端执行此操作,只需创建一个单独的属性“OriginalCopies”并将其设置为 Copies。一旦传递到客户端,它将失去其不变性。 在客户端也可以做类似的事情。 JSON.stringify 你的副本并设置 OriginalCopys to the JSON.parse value of the stringified variable as:

    var copies = JSON.stringify(data.Copies);
    data.OriginalCopies = JSON.parse(copies);
    

    【讨论】:

    • 我在考虑可能不允许我在服务器上添加另一个属性的情况。但是,如果我只是在 ajax 成功期间将“副本”分配给数据对象上的动态 OriginalCopies 属性,那么您的示例应该可以解决问题。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-15
    • 2014-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多