2016-12-21 3 views
0

Ich habe folgenden Code in meinem send.js:Ist es möglich, zwei URLs in eine AJAX-Anfrage einzutragen?

function send_upload_file(){ 
     var FD = new FormData(); 
     FD.append($this.name, $this.value); 
     $.ajax({ 
      url: 'upload', 
      type: 'POST', 
      processData: false, 
      contentType: false, 
      cache: false, 
      data: FD, 

      success: function (data) { 
      console.log('ok'); 
      }, 
      error: function() { 
       alert("ERROR in upload"); 
      } 
     }); 
    } 

Kann ich zwei Links in url:? (z. B. url: 'upload, send')

+0

Haben Sie es versucht? Hat es funktioniert? Nein? Hast du irgendwelche Dokumente gefunden, die sagen, dass es funktionieren könnte? Was würdest du vom Browser erwarten? Beide URLs gleichzeitig nacheinander laden? – Jeff

+0

es ist nicht möglich –

+0

können Sie natürlich einen anderen Ajax in einem der Rückrufe starten (Erfolg, Fehler) – Jeff

Antwort

3

Nr. Wenn Sie zwei AJAX-Anfragen senden möchten, müssen Sie dies zweimal tun. Aber die Abkürzung dafür wäre:

var success = function() { 
    console.log("OK"); 
}; 
$.post("upload", FD, success); 
$.post("send", FD, success); 

Das obige funktioniert asynchron. Wenn Sie es synchron tun wollen, was Sie tun müssen:

$.post("upload", FD, function() { 
    console.log("OK"); 
    $.post("send", FD, function() { 
    console.log("Sent"); 
    }); 
}); 
0

Nein, Sie können nicht, sondern versuchen, Ajax nach dem ersten Erfolg

$.ajax({ 
     url: 'upload', 
     success: function (data) { 
       $.ajax({ 
         url: 'send', 
        }); 
      }, 
      error: function() { 
       alert("ERROR in upload"); 
      } 
     }); 
Verwandte Themen