knockout.js将表单保存到json
我使用knockout.js和映射插件映射我的表单。 我准备将表单保存到json并将其发送回服务器。 这是我第一次这样做,这是最简单的方法吗?
这是我到目前为止:
// Here's my data model var viewModel; $.getJSON('/myJSONdata', function (data) { viewModel = ko.mapping.fromJS(data); ko.applyBindings(viewModel); }); //convert mapped data to json format var jsonData = ko.mapping.toJSON(viewModel); // Do something to send the form data in json format back to the server on form submit
要将viewmodel序列化回JSON,请使用ko.toJSON(myViewModel)
我也建议阅读这篇文章 。
编辑:我可能误解了你想要的东西,但如果你想通过viewmodel提交,你可以这样做:
var viewModel; $.getJSON('/myJSONdata', function (data) { viewModel = ko.mapping.fromJS(data); viewModel.doSomething = function(){ var jsonData = ko.mapping.toJSON(viewModel); $.ajax({ type: "POST", url: '/myJSONdata', data: jsonData }); }; ko.applyBindings(viewModel); });