Javascript callback function in ajax request

k1nda

I'm trying to write a callback function with js here. The problem is that the returned value is incorrect. The variable "d" in the ajax call contains the right data. But the variable a in the done(..) function, does not. Does anyone know how to assign a the value of d?

    function render_confirmation_email(data, cart, delivery_date){
        console.log("Render confirmation email")
        var purchaseTable = "<table>"
        for (var i = 0; i < cart.length; i++) {
            console.log(i);
            var concept = cart[i].name;
            var price = cart[i].price;
            purchaseTable += "<tr>"
            purchaseTable += "<td>" + concept + " - </td>"
            purchaseTable += "</tr>"
            purchaseTable += "<tr>"
            purchaseTable += "<td>" + price + " kr\n</td>"
            purchaseTable += "</tr>"
        }

        purchaseTable += "</table>"
        purchaseTable += "<br> <p>It will be delivered on " + delivery_date + "</p>"

        var tempDom;
        tempDom = $('<div></div>').append(data);
        tempDom.find('#purchaseTable').append(purchaseTable);
        return tempDom.text()
    }


    function get_confirmation_email(cart, delivery_date, render_confirmation_email) {

        return $.ajax({
            type: "GET",
            url:"/confirmation_email",
            async: false,
            success:function(data) {
                console.log("success");
                // render_confirmation_email called when data is ready
                var d = (render_confirmation_email(data, cart, delivery_date));
                console.log("Rendering done")
                console.log(d)
                return d
            }
        });
    }

    var a = get_confirmation_email(JSONcart, form.querySelector('input[name=deliverydate]').value, render_confirmation_email);
    a.done(function(data) {
        console.log("Function done");
        console.log(data);
    });

Thank you!!!

charlietfl

Use then() for each instance. A return does nothing in success as it is not part of the promise chain

Basic example

function doAjax() {
  // sample data that will be returned
  var json = '{"foo":[1,2,3]}'

  return $.ajax({...}).then(function(resp){
     // return to next "then()" in promise chain 
     return resp.foo
  })
}


doAjax().then(function(data){
  console.log(data) // [1,2,3]
})

DEMO

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

Ajax call, function callback, javascript

From Dev

Javascript Ajax Callback function not defined error

From Dev

javascript callback function, onreadystatechange, in a simple ajax example

From Dev

Javascript ES6+Jquery: How do I do to call a method of the class from within a success callback function of an ajax request?

From Dev

Call a javascript function on each ajax request

From Dev

How to access a javascript function inside an ajax request

From Dev

Javascript AJAX request function not returning anything

From Dev

Call a JavaScript function after an Ajax request

From Dev

how to read javascript variable from ajax success callback function

From Dev

JavaScript ajax, JSONP, Callback function to do something with data

From Dev

how to read javascript variable from ajax success callback function

From Dev

Issuing AJAX request in the callback of setState()

From Dev

Javascript callback after ajax

From Dev

Javascript class ajax callback this that

From Dev

Javascript callback after ajax

From Dev

JavaScript Multiple Callback Function

From Dev

Javascript array with callback function

From Dev

Usage of Javascript callback function

From Dev

Javascript Function with Callback and Parameters

From Dev

javascript callback on function

From Dev

JavaScript: custom callBack function

From Dev

Javascript with callback function not working

From Dev

OOP with Javascript and callback function

From Dev

Javascript callback function not work

From Dev

Creating a callback on javascript function

From Dev

Javascript anonymous callback function

From Dev

javascript callback function selection

From Dev

Javascript Callback function malfunction

From Dev

Callback with arrow function in javascript

Related Related

  1. 1

    Ajax call, function callback, javascript

  2. 2

    Javascript Ajax Callback function not defined error

  3. 3

    javascript callback function, onreadystatechange, in a simple ajax example

  4. 4

    Javascript ES6+Jquery: How do I do to call a method of the class from within a success callback function of an ajax request?

  5. 5

    Call a javascript function on each ajax request

  6. 6

    How to access a javascript function inside an ajax request

  7. 7

    Javascript AJAX request function not returning anything

  8. 8

    Call a JavaScript function after an Ajax request

  9. 9

    how to read javascript variable from ajax success callback function

  10. 10

    JavaScript ajax, JSONP, Callback function to do something with data

  11. 11

    how to read javascript variable from ajax success callback function

  12. 12

    Issuing AJAX request in the callback of setState()

  13. 13

    Javascript callback after ajax

  14. 14

    Javascript class ajax callback this that

  15. 15

    Javascript callback after ajax

  16. 16

    JavaScript Multiple Callback Function

  17. 17

    Javascript array with callback function

  18. 18

    Usage of Javascript callback function

  19. 19

    Javascript Function with Callback and Parameters

  20. 20

    javascript callback on function

  21. 21

    JavaScript: custom callBack function

  22. 22

    Javascript with callback function not working

  23. 23

    OOP with Javascript and callback function

  24. 24

    Javascript callback function not work

  25. 25

    Creating a callback on javascript function

  26. 26

    Javascript anonymous callback function

  27. 27

    javascript callback function selection

  28. 28

    Javascript Callback function malfunction

  29. 29

    Callback with arrow function in javascript

HotTag

Archive