Skip to content

Instantly share code, notes, and snippets.

@mxriverlynn
Created March 15, 2013 14:20
Show Gist options
  • Save mxriverlynn/5170176 to your computer and use it in GitHub Desktop.
Save mxriverlynn/5170176 to your computer and use it in GitHub Desktop.
hijacking toJSON for a Kendo UI MVVM model
$(function(){
var ds = new kendo.data.DataSource({
transport: {
create: {
url: "/api/registration.php",
dataType: "json",
type: "POST"
},
parameterMap: function(options, operation){
var json = kendo.stringify(options)
console.log("JSON to the server:", json);
return json;
}
},
autoSync: false,
schema: {
model: {
id: "RegistrationID"
}
}
});
var viewModel = kendo.observable({
firstName: "John",
lastName: "Doe",
genders: ["Male", "Female"],
gender: "Male",
agreed: false,
confirmed: false,
register: function(e) {
e.preventDefault();
ds.sync();
this.set("confirmed", true);
},
startOver: function() {
this.set("confirmed", false);
this.set("agreed", false);
this.set("gender", "Male");
this.set("firstName", "John");
this.set("lastName", "Doe");
},
toJSON: function(){
return {
a: "B",
c: "d",
foo: "BAR"
}
}
});
ds.add(viewModel);
kendo.bind($("form"), viewModel);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment