2013-09-23 52 views
2

在更新之前是否可以访问和修改Kendo UI网格中的数据?Kendo UI,Grid,在发送之前修改数据

下面是一个例子来说明我需要什么。 options.data包含发送的数据,但它已经格式化为字符串"models=%B7%22Id22%.... etc"不是非常方便的形式。

dataSource = new kendo.data.DataSource({ 
      transport: { 
       read: { 
        ... 
       }, 
       update: { 
        url: baseURL + "update", 
        beforeSend: function(xhr, options){ 
         xhr.setRequestHeader('API-KEY', apikey); 
         var modifiedData = doSomething(options.data); 
         return modifiedData; 
        }, 
        dataType: "json", 
        method: "POST", 
        dataFilter: function(data){ 
         ... some data recieved modification 
         return JSON.stringify(somedata); 
        }, 
        complete: function(e) { 
         .... 
        } 
       }, 

回答

5

您应该能够使用parameterMap函数,检查“update”的类型并随意更改options.data。

parameterMap: function(options, type) { 
    if(type === "update") { 
     options.someProperty = "somenewvalue"; 
    } 
    return kendo.data.transports.odata.parameterMap(options, type); 
}