it-swarm.com.de

Extrahieren von Ajax-Rückgabedaten in jQuery

Ich habe jQuery und Ajax ausgeführt, kann die Antwort jedoch nicht in ein Div-Element umwandeln. Dies ist der Code:

Index.html

$.ajax({
    type:"POST",
    url: "ajax.php",
    data:"id="+id ,
    success: function(html){
        $("#response").html(data);
    }
});

Es erhält die Antwort auf meinen <div id="response"></div>.

Der ajax.php Gibt folgenden Code an die Datei index.html Zurück:

<div id ="one"> OneVal </div>
<div id ="sub"> SubVal </div>

Kann ich OneVal und Subval in eine Variable extrahieren und wie kann ich "OneVal" und "SubVal" anstelle der obigen Antwort extrahieren?

42
venkatachalam

Sie können .filter für ein jQuery-Objekt, das aus der Antwort erstellt wurde:

success: function(data){
    //Create jQuery object from the response HTML.
    var $response=$(data);

    //Query the jQuery object for the values
    var oneval = $response.filter('#one').text();
    var subval = $response.filter('#sub').text();
}
83
redsquare

Ändere das .find bis .filter...

17
redsquare

Ich habe bemerkt, dass Ihre Erfolgsfunktion den Parameter "html" hat und Sie versuchen, "Daten" zu Ihren Elementen hinzuzufügen html()... Ändern Sie es so, dass diese beiden übereinstimmen:

$.ajax({
    type:"POST",
    url: "ajax.php",
    data:"id="+id ,
    success: function(data){
        $("#response").html(data);
    }
});
12
VinnyBenson

Sie können json wie im folgenden Beispiel verwenden.

PHP code:

echo json_encode($array);

$array sind Arraydaten, und der jQuery-Code lautet:

$.get("period/education/ajaxschoollist.php?schoolid="+schoolid, function(responseTxt, statusTxt, xhr){
    var a = JSON.parse(responseTxt);
    $("#hideschoolid").val(a.schoolid);
    $("#section_id").val(a.section_id);
    $("#schoolname").val(a.schoolname);
    $("#country_id").val(a.country_id);
    $("#state_id").val(a.state_id);
}
3
aya

Sie können auch den Kontextparameter jQuery verwenden. Link zu Dokumenten

Auswahlkontext

Standardmäßig führen Selektoren ihre Suchvorgänge im DOM ausgehend vom Dokumentenstamm aus. Es kann jedoch ein alternativer Kontext für die Suche angegeben werden, indem der optionale zweite Parameter für die Funktion $ () verwendet wird

Deshalb könnten Sie auch haben:

success: function(data){
    var oneval = $('#one',data).text();
    var subval = $('#sub',data).text();
}
2
Rel