我从cshtml文件中的服务器代码接收此值。它是一个布尔字段,我得到布尔值。
Order="@Model.OrderModel.IsToday"
我试图这样做,但不幸的是,当我将鼠标悬停在ToJson上时,它会说是一个字符串。
Order="@Model.OrderModel.IsToday.ToJson()"
如何将此作为bool发送到javascript?我需要显式转换,但我猜使用bool的语法是错误的。
修改
当我在javascript中使用此Order="@Model.OrderModel.IsToday"
时,它表示未定义,吓坏了!
也尝试了这个
Order="@Json.Encode(Model.OrderModel.IsToday)"
仍然以字符串形式发送。我不想将其作为字符串发送为布尔值
答案 0 :(得分:1)
你在JavaScript中得到字符串值,因为你在变量中使用引号,所以你里面的任何东西都变成了一个字符串。
请改为尝试:
Order = @Model.OrderModel.IsToday.ToString().ToLower()
这里将布尔值转换为字符串,然后将其转换为小写。你需要它,因为ToString
会给你True
或False
,你需要布尔值为true
或false
。
答案 1 :(得分:0)
将其作为字符串传递并在Javascript中转换为布尔值:
var myBool = Boolean(@Model.OrderModel.IsToday.ToString().ToLower());
请参阅here