Jquety.text() не может сравниться с данной строкой

У меня есть весеннее загрузочное приложение, в котором я реализовал аутентификацию на основе ролей. После аутентификации конечного пользователя меню из базы данных должно загружаться в соответствии с ролью.
После успешной аутентификации я извлекаю роль со страницы тимелеафа, чтобы загрузить меню.

До этого все работает нормально, даже если я печатаю значение роли, например alert("#hide").text(), оно предупреждает имя роли.
Чтобы загрузить меню, я должен знать, какой пользователь вошел в систему, чтобы можно было загрузить правильное меню.
Вот почему я извлекаю значение и сравниваю его как «admin», «user» и т. д.
Но сравнение не происходит

Главная.html

<!DOCTYPE html>
<html xmlns = "http://www.w3.org/1999/xhtml"
    xmlns:th = "http://www.thymeleaf.org"
    xmlns:sec = "http://www.thymeleaf.org">


<head>

    <meta charset = "UTF-8"/>
    <meta name = "viewport" content = "width=device-width, initial-scale=1.0"/>
    <meta http-equiv = "X-UA-Compatible" content = "ie=edge"/>
    <title>BSNL | CC</title>
    <link rel = "stylesheet" type = "text/css" media = "screen, projection" 
          href = "/static/css/bootstrap.css" 
          th:href = "@{/css/bootstrap.css}" />

     <link rel = "stylesheet" type = "text/css" media = "screen, projection" 
          href = "/static/css/bootstrap.css" 
          th:href = "@{/css/menu.css}" />

</head>
<body>

    <div id = "includedContent"></div>

    Logged in user: <b th:inline = "text"  class = "user" id = "hide"> [[${#httpServletRequest.remoteUser}]] </b> 
    <input type = "hidden" class = "order-entry" id = "ID" placeholder = "" th:value = "${#httpServletRequest.remoteUser}"  value = "${#httpServletRequest.remoteUser}"/>

    <script th:src = "@{/js/jquery-3.4.1.js}"></script>
    <script th:src = "@{/js/bootstrap.js}"></script>
    <script th:src = "@{/js/custom.js}"></script>
    <script th:src = "@{/js/home.js}"></script>
</body>
</html>

Примечание:${#httpServletRequest.remoteUser} код на основе spring, чтобы увидеть, кто вошел в систему, например, администратор, пользователь или суперадминистратор.

Home.js

$(document).ready(function(){

    $("#includedContent").load("http://localhost:8080/BSNLCC-BackendWIthSecurity/home/"); 


    alert($("#hide").text());    //printing fine

    if ($("#hide").text() == "null"){   //comparing not happening tried with ==== also
        alert(true);
      }
    /*
    if ($("#rle").text() == "admin"){
        loadAdminMenu();
    }else if ($("#ID").text() == "superadmin"){
        loadSuperAdminMenu();
    }

    function loadAdminMenu(){
        alert($("#rle").text());
        $.ajax({
            url: 'home/load/menu',
            type: 'GET',
            contentType : 'application/json; charset=utf-8',
            async: false,
            data: {
                role: $("#rle").text()
            },
            cache: false,
            datatype: 'json',
            success: function(data) {
                alert("success");
            },
            error: function(err){
                console.info(err);
            }
        });
    }*/

});

Ваш текст на самом деле предназначен для того, чтобы сказать «null» в виде строки? Чтобы сравнить с нулем, вам не нужен "" вокруг нуля.

I_ATE_YOUR_WORK_FILES 20.06.2019 13:02
Как конвертировать HTML в PDF с помощью jsPDF
Как конвертировать HTML в PDF с помощью jsPDF
В этой статье мы рассмотрим, как конвертировать HTML в PDF с помощью jsPDF. Здесь мы узнаем, как конвертировать HTML в PDF с помощью javascript.
0
1
41
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Одна глупая вещь, которую я забыл обрезать извлеченное значение .trim() делает волшебство.

Другие вопросы по теме