JQuery Div не скроет

Я пытаюсь получить div, чтобы скрыть в jQuery, когда пользователь не вошел в систему. У меня есть условие, которое должно выполнить это, но я не получаю от него никакого результата. Может кто-нибудь помочь мне выяснить, что не так с моим кодом? Благодарю.

JQuery:

jQuery(document).ready(function() { initHideMenuItem();
});
function initHideMenuItem() { var loggedin = '{module_isloggedin}'; if (loggedin == 1){ jQuery("div.personal-tag").show(); } else { jQuery("div.personal-tag").hide(); }
}

Если вы хотите узнать, что "{module_isloggedin}" - это тег, который имеет значение 0 или 1.

HTML:

<div>Welcome, {module_firstname}: <span>{module_customerfield,170943,513231}</span>
</div>
2 ответа

Мне не нравится то, что вы делаете с {module_isloggedin}, но если вы говорите, что оно имеет значение 0 или 1 (целые числа), и вы обматываете его внутри кавычек следующим образом:

var loggedin = '{module_isloggedin}';

... когда вы сравниваете это следующим образом:

if (loggedin == 1){

... он всегда будет оценивать true (потому что string == 1)

Попробуйте либо отбросить цитаты вокруг вашего модуля, либо добавить их вокруг 1 в вашем сравнении.


использование

var loggedin = !!parseInt('{module_isloggedin}');

licensed under cc by-sa 3.0 with attribution.