2016-07-04 4 views
-2

enter image description hereÄndern html Etikett nach abgerufenen Daten von db von Django

Dies ist, wie es aussehen soll ist. Ich versuche, HTML class="label-warning" oder class="label-info' entsprechend dem Status zu ändern, der aus der DB kommt.

$(document).ready(function() { 
    var valueCol = $("span #label" tr td:nth-child(2)"); 
    if ($('#label').valueCol == 'New') { 
     $('#label').addClass('label-info'); 
    }; 
    else ($('#label').valueCol == 'Rep') { 
     $('#label').addClass('label-warning'); 
    }; 
    else($('#label').attr('value').val() == 'Progress') { 
     $('#label').addClass('label-success'); 
    }; 
{{account.status}} 

So basiert auf .status ich verschiedene Klassen hinzufügen möchten. Wie kann ich das machen?

+2

Sie haben einige Syntaxprobleme - Sie haben ein nicht abgestimmter doppelte Anführungszeichen in der Selektor des jQuery-Objekts und Sie sollten die Semikolons nach den Bedingungen 'if' und 'else' entfernen. –

+0

'$ (" span #label "tr td: nth-child (2)"); '- es gibt ein Durcheinander mit Anführungszeichen – k102

+0

Ich glaube nicht, das ist das einzige Problem – art

Antwort

0

Versuchen Sie folgendes:

in Ihrer HTML-Datei:

<script> 
    var status = '{{ account.status }}'; 
</script> 

und in der Skriptdatei:

$(document).ready(function() { 
    var cls = "label-info"; 
    if(status == Condition){ 
     cls = 'label-warning'; 
    } 
    $('#label').addClass(cls); 
    ... 
}); 
+0

ok, aber wenn var cls =" label-info "Würde diese Funktion nur neue cos hinzufügen, so würde es zwei geben? Sollte ich .deleteClass (label-info) eine addClass ('label-warning')? – art

+0

Funktioniert nicht, und HTML zeigt jetzt var status = 'status' – art

+0

Erste cls = "label-info", aber wenn Ihre Bedingung erfüllt ist (in 'if (status == Bedingung)'), dann cls = 'label-warning'! – MHS

Verwandte Themen