Ich möchte jedes Element innerhalb von this.responseText
abrufen und in meinem HTML auf Javascript setzen. Ist in meinem Code etwas nicht in Ordnung? Ich hoffe, dass mein Code Ihnen hilft, meine Frage zu verstehen. Vielen Dank. (p.s. der HTML-Code wird zur Verfügung gestellt, und so kann ich nicht jquery verwenden.)Wie verwendet man JSON-Daten (Array) aus PHP in Javascript
ein Beispiel für this.responseText
ist unten; (Durch die Verwendung von alert
, ich habe, dass)
{"name":"Hermione Grainger","number":"4","review":"Not as good as the NEXT book in the series, but hilarious and satisfying."}{"name":"Ronald Drumpf","number":"1","review":"Feminist propaganda!"}{"name":"Brienne of Tarth","number":"5","review":"Alanna is my best friend."}
Und mein Java-Skript unten ist;
function bookReview(){
var reviews = JSON.parse(this.responseText);
for(var i=0; i<reviews.length; i++){
var name = document.createElement("h3");
var text = document.createElement("p");
name.innerHTML = reviews[i].name + reviews[i].number;
text.innerHTML = reviews[i].review;
document.getElementById("reviews").appendChild(name);
document.getElementById("reviews").appendChild(text);
}
}
oder ist da etwas falsch in meinem PHP-Code ??
Ich habe meinen PHP-Code hinzugefügt. Können Sie bitte meinen PHP-Code überprüfen? – Tak
siehe 2. Antwort hier: http://stackoverflow.com/questions/6739871/how-to-create-an-array-for-json-using-php (erzeugen Sie die Arrays in der Schleife, dann außerhalb von ihnen setzen sie in ein Array und json.encode dieses). – aabbcccc
habe ich es unten auf den Code, aber es funktionierte nicht gut ... \t Funktion Bewertung ($ Bewertungen) { \t \t foreach ($ Bewertungen wie $ pro Stück) { \t \t \t $ Bewertung = file ($ je , FILE_IGNORE_NEW_LINES); \t \t \t $ output = array ( \t \t \t \t Array ( \t \t \t \t \t "name" => $ Bewertung [0], \t \t \t \t \t "number" => $ Bewertung [1], \t \t \t \t \t "Bewertung" => $ Bewertung [2] \t \t \t \t \t) \t \t \t \t); \t \t \t \t \t} \t \t header ("Content-Type: application/json"); \t \t drucken (json_encode ($ output)); \t} – Tak