JSFiddle - React, Tailwind, and code Playground
HTML
<div>
<form action="/">
<input type="text" name="data1" value="test" />
<input type="submit" value="submit" />
</form>
</div>
JavaScript
(function(){
// Store a reference to the original ajax method.
var originalAjaxMethod = jQuery.ajax;
// Define overriding method.
jQuery.ajax = function(options){
var key = '';
if(options.url)
key += options.url;
if(options.data)
key += '?' + options.data;
console.log(key)
debugger;
if(('localStorage' in window) && (key in localStorage)){
console.log('found locally');
var cb = options.complete || options.success;
cb.call(this, localStorage[key]);
}
else{
console.log('no key, send ajax');
var cb = options.success;
options.success = function(responseText){
localStorage[key] = responseText;
cb.apply(this, arguments);
};
originalAjaxMethod.call( this, options );
}
};
})();
$('form').submit(function(e){
var data = $(this).serialize();
$.ajax({
url: this.action,
data: data,
success: function(resonseText){
console.log('success says');
console.log(resonseText.substring(0, 10));
}
});
e.preventDefault();
});