在RaC中将Razor字符串变量转换为Javascript字符串变量

时间:2016-10-19 08:34:05

标签: javascript c# asp.net-mvc asp.net-mvc-4 razor

我正在尝试将我的cshtml视图上的字符串变量(甚至是布尔值)传递给我的javascript部分。我可以成功地将razor部分的值传递给javascript(如果是整数)。但我想要完成的是传递字符串值。这是我的.cshtml示例代码:

string strAnnouncement = "My announcement";
int intCounterValue = 1200;

要在Javascript上接收值,这是我的代码:

//Cannot get the value, always error on Developer Tool console
var SessAnnouncement = @strAnnouncement;

//Can get the value successfully
var SessInitTimer = @intCounterValue;

正如你所看到的,我可以通过Jss在SessInitTimer上获得价值1200.但是在SessAnnouncement上,我得到了一个未捕获的ReferenceError:我的公告未定义。

如何在razor部分获取strAnnouncement值并将其传递给脚本部分?

1 个答案:

答案 0 :(得分:12)

它们被视为变量,因为您尚未定义它们,您会收到上述错误。

您需要将引号括起来作为字符串处理。

var SessAnnouncement = "@strAnnouncement";