Ich benutze Javascript, um einige Listenelemente basierend auf der Benutzerrolle zu verbergen.jquery text() nicht mit String zu vergleichen
Ich bekomme die Rolle aus einem Listenelement text()
. Wenn ich den $("#activeUser").text()
Wert mit einer Zeichenfolge vergleiche, funktioniert es nicht.
HTML Block, den ich in meinem Javascript verwende, um den text() -Wert eines Listenelements zu erhalten.
<ul class="pull-right breadcrumb">
<li><a href="index.php">Home</a> <span class="divider">/</span> </li>
<li id="activeUser" class="active"> <?php echo ucfirst($_SESSION['sewafs_user_role']); ?> </li>
</ul>
Javascript
$(document).ready(function() {
var testRole = $("#activeUser").text();
//This block of code works
role = 'Guest';
if (role == 'Guest') {
alert("Inside if");
$("#request_history_li").hide();
$("#assign_role_li").hide();
$("#volunteer_li").hide();
$("#profile_li").show();
$("#change_password_li").show();
}
//This doesn't work why?
if (testRole == 'Guest') {
alert("Inside if");
$("#request_history_li").hide();
$("#assign_role_li").hide();
$("#volunteer_li").hide();
$("#profile_li").show();
$("#change_password_li").show();
}
});
Aber wenn ich den Wert des var Testrole mit Alarm sehen druckt er Gast.
Ich versuchte, den testRole-Wert in die Zeichenfolge mit der Methode testRole.toString()/string (testRole) zu konvertieren, aber nichts half.
Bitte lassen Sie mich wissen, wo ich falsch liege. Vielen Dank.
Vielen Dank. Als ich dieses Problem hatte, dachte ich, der Leerraum könnte das Problem sein, aber trim() dint Streik für mich. Danke für die zusätzlichen Tipps. – user2617611