如何设置从视图传入的val的JS var

时间:2015-10-02 09:36:45

标签: c# asp.net-mvc asp.net-mvc-3 razor

使用@ Model.LayerName将值传递给视图 想将此值存储在JS变量中......

var g_tableName = @Model.LayerName;

LayerName末尾的半可乐;标记为语法错误,但我无法弄清楚为什么......任何想法? TA

1 个答案:

答案 0 :(得分:2)

这是因为,我假设,Model.LayerName是一个字符串。因此,当它作为Javascript的一部分呈现时,它不会被包含在引号内,因此无论您的图层名称是什么,它都将直接打印到代码中。例如,如果您的图层名称属性值为this is my layer name

var g_tableName = this is my layer name;

这显然不是有效的Javascript。因此,您需要将其包装在引号中:

var g_tableName = '@Model.LayerName';

这会导致以下内容呈现:

var g_tableName = 'this is my layer name';