function getFormData($form) { var unindexed_array = $form.serializeArray(); var indexed_array = {}; $.map(unindexed_array, function (n, i) { indexed_array[n['name']] = n['value']; }); return indexed_array; } $(function () { $("form").on('submit', function () { $("#progressdiv").removeClass('d-none').show(); $("button[type='submit']").prop('disabled', true); // var data = JSON.stringify( $(this).serializeArray() ); $("#resultdiv").hide(); var data = getFormData($(this)); loadCalculation(data, function () { $("button[type='submit']").prop('disabled', false); $("#progressdiv").addClass('d-none').hide(); }); return false; }); }); function loadCalculation(req, alwaysFunc) { console.log("Loading calculation.."); console.log(req); $.ajax({ type: 'POST', url: 'https://bifuelcalculator.azurewebsites.net/api/Calculate', data: JSON.stringify(req), contentType: 'application/json', dataType: 'json' }).done(function (d) { console.log("Data returned:"); console.log(d); $("#resultdiv").removeClass('d-none').show(); $("#result_bf_vs_diesel").text(d.bf_vs_diesel); $("#result_bf_vs_grid").text(d.bf_vs_grid); $("#result_bf_costs").text(d.bf_costs); $("#result_diesel_costs").text(d.diesel_costs); $("#result_grid_costs").text(d.grid_costs); /*$.each(data, function(index, element) { $('body').append($('
', { text: element.name })); });*/ }).fail(function (jqXHR, textStatus, err) { console.log("Error"); alert("Error - check your input"); }).always(function () { console.log("Calling always func"); alwaysFunc(); }); }