2017-02-09 3 views
2

Ich habe ein Skript abrufen 4 Attribute aus einer Datenbanktabelle mit Ajax und PHP. Eines der Attribute ist die Schriftfarbe für die HTML-Ausgabe. Das Attribut wird in eine Variable namens 'type' eingegeben. Ich versuche, die Schriftfarbe einer bestimmten Zeile in der HTML-Ausgabe zuzuweisen, aber die gesamte HTML-Ausgabe ändert die Schriftfarbe und nicht nur die eine bestimmte Zeile. Ich bin ziemlich neu, also wird jede Hilfe geschätzt.

HTML div

<div id="output"></div> 

Hier ist meine Funktion

function getEvent() 
    {  
    console.log("function call"); 
    $.ajax({ 
     url: 'get_events.php', data: "", dataType: 'json', success:  function(rows) 
    { 
    for (var i in rows) 
    { 
     var row = rows[i]; 

     var id = row[0]; 
     var type = row[1]; 
     var vname = row[2]; 
     var time = row[3]; 

     $('#output').css('color', type).prepend("<b>id: </b>"+id+"<b> event: </b>"+vname+"<b> time: </b>"+time+"</br>") 
     type='black'; 
    } 
    } 
}); 
    }; 
+0

$ ('# output') zielt auf eine Fehlerbehebung ab Ed-DOM-Element (durch ID), aber Sie tun dies in einer Schleife, so dass Sie effektiv die 'Farbe' von was auch immer das gleiche Objekt (egal welches Element ID = 'Ausgabe') für jede Zeile immer wieder ändert. – Tim

Antwort

1

Swapping prepand und css mit kleineren Wähler Update auf Schriftfarbe einstellen soll Problem beheben, versuchen Linie zu ersetzen $('#output').css... mit folgenden Zeilen:

$('#output').prepend("<b>id: </b>"+id+"<b> event: </b>"+vname+"<b> time: </b>"+time+"</br>"); 
$('#output b:first-child').css('color', type) 
+0

Ausgezeichnet, das hat wie ein Charme funktioniert, vielen Dank! – user2120143

+0

@ user2120143 Sie sind willkommen, können Sie Antwort als akzeptiert markieren, um Sie auf SO Frage zu halten ...? –

Verwandte Themen