Ich habe diese Spanne
<a title="Prev" data-event="click"
data-handler="prev" class="ui-datepicker-prev ui-corner-all">
<span class="ui-icon ui-icon-circle-triangle-w">Prev</span>
</a>
Ich muss den Text der Spanne so einstellen, dass er <<
anstelle des aktuellen Textes ist Prev
.
Ich habe es unten versucht, aber es hat den Text nicht wie erwartet geändert. Wie kann das gemacht werden?
$(".ui-icon .ui-icon-circle-triangle-w").html('<<');
Antworten:
Verwenden Sie
.text()
stattdessen und ändern Sie Ihren Selektor:$(".ui-datepicker-prev .ui-icon.ui-icon-circle-triangle-w").text('<<');
- DEMO ANZEIGEN -
quelle
Dies liegt daran, dass Sie einen falschen Selektor haben. Entsprechend Ihrem Markup
.ui-icon
und.ui-icon-circle-triangle-w"
sollte auf das gleiche<span>
Element verweisen . Sie sollten also Folgendes verwenden:$(".ui-icon.ui-icon-circle-triangle-w").html("<<");
oder
$(".ui-datepicker-prev .ui-icon").html("<<");
oder
$(".ui-datepicker-prev span").html("<<");
quelle
<<
als HTML zu interpretieren , nein?text()
Methode ist nicht erforderlich .text
sollte verwendet werden. Was wäre, wenn der Benutzer<prev>
angezeigt werden wollte , dann würde dies als HTML interpretiert<prev>
hat eine schließende>
Klammer, daher macht der Browser ein Tag daraus. Andernfalls<<
oder>>
wird es richtig interpretiert.html()
statttext()
? Ich sehe keinen Vorteil, nur einen möglichen Fehler. OP ändert den Inhalt zu<prev>
einem späteren Zeitpunkt. Jetzt müssen sie die Methode ändern, mit der die Zeichenfolge ausgegeben wird. Warum wurde überhaupt nicht die richtige Methode angewendet?Sie müssen Ihren Selektor reparieren. Obwohl für die CSS-Syntax mehrere Klassen durch Leerzeichen getrennt werden müssen, müssen sie für die Selektorsyntax direkt verkettet und mit einem Punkt vorangestellt werden:
$(".ui-icon.ui-icon-circle-triangle-w").text(...);
oder besser:
$(".ui-datepicker-prev > span").text(...);
quelle
$('.ui-icon-circle-triangle-w').text('<<');
quelle
Geben Sie Ihrer Spanne eine ID und ändern Sie dann den Text der Zielspanne.
$("#StatusTitle").text("Info"); $("#StatusTitleIcon").removeClass("fa-exclamation").addClass("fa-info-circle"); <i id="StatusTitleIcon" class="fa fa-exclamation fa-fw"></i> <span id="StatusTitle">Error</span>
Hier wird "Fehler" -Text zu "Info" und ihre fontawesome Symbole werden ebenfalls geändert.
quelle
Probieren Sie es aus. Zuerst wird nach Anker-Tags gesucht, die span mit der Klasse "ui-icon-circle-triangle-w" enthalten. Anschließend wird der Text von span auf "<<" gesetzt.
$('a span.ui-icon-circle-triangle-w').text('<<');
quelle