JSFiddle - React, Tailwind, and code Playground
HTML
<script src="//cdnjs.cloudflare.com/ajax/libs/knockout/3.1.0/knockout-min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/knockout.mapping/2.4.1/knockout.mapping.js"></script>
<script src="http://jquery-json.googlecode.com/files/jquery.json-2.2.min.js"></script>
<BODY>
CPULOAD: <SPAN data-bind="text: cpuload"></SPAN><br/>
DISKLOAD: <SPAN data-bind="text: diskload"></SPAN><br/>
MEMLOAD : <SPAN data-bind="text: memload"></SPAN><br/>
<input type="button" class="getData" value="Get Data"/>
</BODY>
JavaScript
var MyServerInfo;
var bogus = { //this is for jsfiddle only, to simulate AJAX calls
json: $.toJSON({
cpuload: '99',
diskload: '55',
memload : '33'
}),
delay: 0
}
$(document).ready(function(){
MyServerInfo = new ViewModel(
{"cpuload": 0,"diskload": 0, "memload": 0} //seed empty
);
ko.applyBindings(MyServerInfo);
//bogus up data button
$('.getData').on('click', function(){
$.ajax({
url:"/echo/json/",
data:bogus,
type:"POST",
success:function(response) { //receiving jsfiddle bogus data (you do your own)
ko.mapping.fromJS(response, {}, MyServerInfo);
console.log(response);
}
});
});
});
function ViewModel (data) {
data = data || {}; var self = this;
self = ko.mapping.fromJS(data);
return self;
}