Javascript: $. ajax является нулем внутри цикла for - PullRequest
0 голосов
/ 19 февраля 2020

У меня есть функция onclick btn-book, и внутри нее есть для l oop для данных Ajax. Я уверен, что данные имеют значения, но я не понимаю, почему я всегда получаю нулевое значение. вот код онклика.

$('#mapContainer').on('click', '.btn-book', function(e){
    e.preventDefault();
    var id = e.currentTarget.id;
    var routeOrigin = route_Search.origin;
    routeOrigin = routeOrigin.filter(function(e){return e}); 
    var url = base_url;

    for(var i = 1; i <= desNo; i++){
            $.ajax({
                type: "POST",
                url: url,
                data: {
                    id: id,

                    origin: $('#route-origin'+i).val(),
                    origin_contactperson: $('#origin-contactperson'+i).val(),
                    origin_company: $('#origin-company'+i).val(),
                    origin_phonenumber: $('#origin-phonenumber'+i).val(),
                    origin_notes: $('#origin-notes'+i).val(),
                    origin_Lng: routeOrigin[i-1].lng(),
                    origin_Lat: routeOrigin[i-1].lat(),
                },
                success: function(msg)
                {   
                    console.log(msg);
                },
                error: function()
                {
                    alert("An error occured while updating. Try again in a while");
                }
            })

    }

});

1 Ответ

0 голосов
/ 19 февраля 2020

используйте вот так.

 $('#mapContainer').on('click', '.btn-book', function(e){
        e.preventDefault();
        var id = e.currentTarget.id;
        var routeOrigin = route_Search.origin;
        routeOrigin = routeOrigin.filter(function(e){return e}); 
        var url = base_url;
        var origin = [], origin_contactperson = []

        for(var i = 1; i <= desNo; i++){
             origin.push($('#route-origin'+i).val());
             origin_contactperson.push($('#origin-contactperson'+i).val());
                .....
        }

         $.ajax({
                    type: "POST",
                    url: url,
                    data: {
                        id: id,

                        origin: origin,
                        origin_contactperson: origin_contactperson,
                        origin_company: origin_company,
                        origin_phonenumber: origin_phonenumber,
                        origin_notes: origin_notes,
                        origin_Lng: origin_Lng,
                        origin_Lat: origin_Lat
                    },
                    success: function(msg)
                    {   
                        console.log(msg);
                    },
                    error: function()
                    {
                        alert("An error occured while updating. Try again in a while");
                    }
                })

    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...