2017-09-15 6 views
0

Ich versuche <div id="divname"></div> innerhalb eines div-Elements Antwort von PHP-Skript zum AnzeigenJQuery .load Antwort

jQuery('#divname').load('TEST.php',{ 
    'id' : id 
}); 

Mein Code funktioniert wie erwartet, und legen Sie erfolgreich «1» in diesem div.

test.php Datei:

<?php 
    echo '1'; 
?> 

... aber ich würde auch die Reaktion in der gleichen Zeit mit jQuery, someting wie diese alarmieren mögen:

jQuery('#divname').load('TEST.php',{ 
    'id' : id 
}, 
alert(response); //???? 
); 

Können Sie mir helfen ?

+1

Verwenden Sie '$ .get' mit einem Callback oder' $ .ajax'. –

+0

Ich würde auch vorschlagen, '$ .get' oder' $ .ajax' zu verwenden, als Sie auch überprüfen können, ob die Aktion ausgeführt, fehlgeschlagen, erfolgreich und mehr. Siehe die Dokumentation: http://api.jquery.com/jquery.ajax/ – LinkinTED

+1

Mögliches Duplikat von [Verwendung von jQuery mit Versprechen] (https://stackoverflow.com/questions/6507181/using-jquery-load-with- Versprechungen) – Script47

Antwort

1

Verwenden Sie die Callback-Funktion, documentation

jQuery('#divname').load('TEST.php',{ 
     'id' : id 
    }, function() { 
    alert("Load was performed."); 
}); 
2

Wie bereits kommentiert, würde ich $.ajax für diese Aktion verwenden:

$.ajax({ 
    url: "TEST.php" 
}) 
    .done(function(data) { 
    // alert("Returned data: " + data); 
    $('#divname').html(data); 
    }) 
    .fail(function() { 
    alert("Loading failed"); 
    }); 

Sie können dann prüfen, ob die Aktion erfolgreich war (erledigt) oder nicht (Scheitern).

In der Done-Funktion sind Daten die Daten, die von der Anforderung zurückgegeben werden.

+0

Sie fehlen '$ ('# divname'). html (data);' um den Beispielcode vollständig zu entsprechen. – Adder

+0

Danke @Adder, änderte es – LinkinTED

0

Auschecken this Post darüber, wie Rückrufe arbeiten. Der folgende Code sollte so funktionieren, wie Sie es erwarten.

jQuery('#divname').load('TEST.php',{ 
    'id' : id 
}, response => alert(response));