Так что я пытаюсь выполнить скрипт при загрузке моего представления. Проблема в том, что всякий раз, когда я использую свою логическую переменную как условную, результат всегда является True, даже если он распознается как значение False.Логическая переменная из ViewModel не может использоваться как условие в представлении
Более конкретно:
<script type="text/javascript">
$(document).ready(function() {
alert('@Model.MyBool');
alert('@Model.MyBool' ? "True" : "False");
});
</script>
Выходы
False
True
ИЛИ
True
True
кажется, что сценарий может распознать правильное значение переменной, но мгновенно забывает его, когда он пытается использовать его как условное. Я даже попытался сохранить его во временной переменной, и это все равно произойдет.
Есть ли причина для этого? Я не могу найти какую-либо информацию через Google, и это сводит меня с ума.
Спасибо!
удаление одиночных кавычек вызывает синтаксическую ошибку – user3799284
Изменен. Поскольку MVC отображает bool как «False» или «True», и это не допустимые литералы в Javascript, будет выведена ошибка. Поэтому преобразуйте значение bool в нижний регистр. Там могут быть лучшие решения. – Alex