2017-05-16 5 views
-1

Ich möchte die Klasse eines bestimmten Div ändern. Ich mache eine load-more-Funktion und jedes Mal, wenn ich neue Inhalte lade, muss ich sie mit den richtigen Informationen aktualisieren. Also entschied ich mich für diese Funktion, die meine .status-Klasse auswählt. Ich möchte answered-accepted oder answer-selected hinzufügen.Ändern Sie den Klassennamen mit Javascript

function updateSolvedStatus(viewsCount, object) { 
    if(object.solved_date) { 
     viewsCount.attr('class', 'status answered-accepted'); 
     console.log(viewsCount); 
    } else { 
     viewsCount.attr('class', 'status answer-selected'); 
    } 
} 

Das ist mein html div mit Smarty, Vorlage für PHP. Es ist leise einfach. Ich möchte, dass meine Klasse akzeptiert wird, wenn das gelöste_Datum nicht null ist und wenn nicht null Ich möchte, dass meine Klasse answer_selected ist.

Gibt es eine Möglichkeit, meinen Klassennamen mit dieser Methode zu ändern?

<div {if $question['solved_date']} 
      class="status answered-accepted" 
     {else} 
      class="status answer-selected" 
     {/if} 
       title="one of the answers was accepted as the correct answer"> 
      <div class="answers-count"> 
       <span title="{$question['answers_count']} answer">{$question['answers_count']}</span></div> 
      <div>answer</div> 
     </div> 
+0

In Ihrer 'updateSolvedStatus'Funktion übergeben Sie dom Element als' viewsCount'? – azs06

Antwort

1

Ich verstehe Ihre Frage nicht gut. Ich nehme an, Sie wissen, welcher Code serverseitig und welcher Code clientseitig ausgeführt wird. Sie können so etwas wie diese verwenden, um die Klasse eines Elements über Javascript zu ändern:

<!--HTML--> 
<div id=MyElement> 
</div> 

Javascript

document.getElementById("MyElement").className = "status answered-accepted"; 
0

Meine Frage sinnvoll, nicht. Das Problem kommt nicht von dem, was ich berichte. Es ist ein CSS-Problem. Sie können dies einfach löschen und Ihre Zeit verschwenden.

Kinds Grüße

Verwandte Themen