Как я могу представить логическое значение переменной JavaScript в файле cshtml?
В настоящее время это показывает синтаксическую ошибку:
<script type="text/javascript" >
var myViewModel = {
isFollowing: @Model.IsFollowing // This is a C# bool
};
</script>
javascript
asp.net-mvc
razor
Nikos
источник
источник
Ответы:
Вы также можете попробовать:
и лучший способ использовать:
источник
@Json.Encode(Model.IsFollowing)
IMHO самое элегантное решение. Спасибо!@using System.Web.Helpers
чтобы завершить код.Логическое значение JSON должно быть в нижнем регистре.
Поэтому попробуйте это (и убедитесь, что у вас есть
//
комментарий к строке):Или (примечание: вам нужно использовать пространство имен
System.Xml
):источник
Потому что поиск привел меня сюда: в ASP.NET Core
IJsonHelper
нетEncode()
метода. Вместо этого используйтеSerialize()
. Например:источник
Почему бы
True
и неtrue
спросить ... Хороший вопрос:почему Boolean.ToString выводит "True", а не "true"
источник
@Model.IsFollowing
действительного синтаксиса JS? Или это полагается на факт, что это будет, потому что это случается, чтобы быть логическим?'@(Model.IsFollowing)'
Вот еще один вариант для рассмотрения, используя !! преобразование в логическое значение.
Это сгенерирует следующее на стороне клиента: 1 будет преобразовано в true, а 0 в false.
источник
Решение, которое легче читать, было бы сделать это:
источник