JQuery AJAX with Promises
by Steve Coffman
HTML
<script src="http://cdnjs.cloudflare.com/ajax/libs/bluebird/1.2.2/bluebird.min.js"></script>
<input type="button" class="list" value="click me"></input>
JavaScript
/* jshint esnext:true, devel:true, browser:true, jquery:true */
function postModifiedData(data) {
'use strict';
var json = {
json: JSON.stringify(data),
delay: 1
};
//echo(json);
return Promise.resolve($.post('/echo/json/', json));
}
$('.list').on('click', function() {
'use strict';
Promise.resolve($.get('http://echo.jsontest.com/uid/12345/value/nuno_bettencourt'))
.then(postModifiedData)
.then(function(json) {
alert('UID=' + json.uid + '\nName=' + json.value);
});
});
//var jqDeferredGet = $.get('http://echo.jsontest.com/uid/12345/value/nuno_bettencourt');
//var jsPromisedGet = Promise.resolve(jqDeferredGet);