Comment rendre un booléen en une variable JavaScript dans un fichier cshtml?
Actuellement, cela montre une erreur de syntaxe:
<script type="text/javascript" >
var myViewModel = {
isFollowing: @Model.IsFollowing // This is a C# bool
};
</script>
javascript
asp.net-mvc
razor
Nikos
la source
la source
Réponses:
Vous pouvez également essayer:
et une manière toujours meilleure est d'utiliser:
la source
@Json.Encode(Model.IsFollowing)
est à mon avis la solution la plus élégante. Je vous remercie!@using System.Web.Helpers
pour compléter le code.Le booléen JSON doit être en minuscules.
Par conséquent, essayez ceci (et assurez-vous de ne pas avoir le
//
commentaire sur la ligne):Ou (note: vous devez utiliser l'espace de noms
System.Xml
):la source
Parce qu'une recherche m'a amené ici: dans ASP.NET Core,
IJsonHelper
n'a pas deEncode()
méthode. Utilisez plutôtSerialize()
. Par exemple:la source
Pourquoi
True
et pastrue
vous demandez ... Bonne question:Pourquoi Boolean.ToString affiche-t-il "True" et non "true"
la source
@Model.IsFollowing
syntaxe JS est-il réellement valide? Ou est-ce que cela se fonde sur le fait que ce sera parce que cela se trouve être booléen?'@(Model.IsFollowing)'
Voici une autre option à considérer, en utilisant le !! conversion en booléen.
Cela générera les éléments suivants du côté client, 1 étant converti en vrai et 0 en faux.
la source
Une solution plus facile à lire serait de faire ceci:
la source