JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://github.com/downloads/SteveSanderson/knockout/knockout-2.0.0.js"></script>
<script src="https://raw.github.com/romanych/ko.editables/master/ko.editables.js"></script>
<script src="https://raw.github.com/SteveSanderson/knockout.mapping/master/knockout.mapping.js"></script>
Fisrt name: <input type="text" data-bind="value: firstName" />
<br />
Last name: <input type="text" data-bind="value: lastName" />

JavaScript

var data = {
        firstName: 'Roman',
        lastName: 'Gomolko'
    };

var viewModel = ko.mapping.fromJS(data);

var dataToSend = ko.computed(function() {
    return ko.toJS(viewModel);
});

dataToSend.subscribe(function(data) {
    alert('Data to send to server:' + ko.toJSON(data));
    
    $.ajax({
        url: '/echo/json/',
        data: data
    }).success(function(response) {
        alert('Saved');
    });;
        
});

ko.applyBindings(viewModel);