0

jQuery と Python を使用して辞書を送信しようとしています。問題は、async: false を使用すると機能することですが、私の目標は async: true でデータを送信することです。また、データを送信すると、「完了」関数にある alert() が2回表示されます。この2つの問題を解決するにはどうすればよいですか?

JavaScript コードと Python コードを添付します。

最初の Javascript コード:

arrObj = [['numero', 'dato', 'dato2'], ['12345', 'prueba', 'prueba2'], ['54321', 'abeurp', '2abeurp'], ['112233', 'trewq', 'fdsag']];
var n = arrObj.length;

for(var i=1;i<n;i++){

    var jsonArr = {};
    jsonArr = {'numero': arrObj[i][0],
        'dato': arrObj[i][1],
        'dato2': arrObj[i][2]
        };
    jsonArr = JSON.stringify(jsonArr);

    $.ajax({
        data: jsonArr,
        type: 'post',
        url: '/getData',
        async: true,
        dataType: 'text',
        error: function(output){
            console.log('error');
        },
        success: function(output){
            console.log('bien ' + i);
        },
        complete: function(output){         
            alert("fin");
        }
    });
}

そして Python スクリプト:

class getData(webapp.RequestHandler):
    def post(self):
        v1 = self.request.get('numero')
        v2 = self.request.get('dato')
        v3 = self.request.get('dato2')

        logging.info('DEBUG: var1=' + v1 + ' var2=' + v2 + ' var3=' + v3)

        self.response.out.write('good')

ご協力ありがとうございました。

4

1 に答える 1