如何在javascript中访问ViewData

我在通过javascript访问ViewData对象时遇到问题。

我已经在控制器和视图的document.ready事件上设置了ViewData对象,我试图查看同一个ViewData对象的内容,如下所示:

var test = ; alert(test); 

在此之后我没有收到警告消息,并且在此语句之后我的脚本都不会运行。 我假设这个脚本无效,从而杀死了一切。 我已经尝试过这个相同脚本的几个不同变体而没有任何运气。

我在这里缺少什么?

先谢谢,比利

尝试在输出周围添加一些引号:

 var test = '<%= ViewData["NAME"].ToString() %>'; alert(test); 

编辑:

我注意到你正在使用NAME作为密钥; 这个名字有没有单引号呢? 如果任何值都可能包含一个,那么你会想要这样的东西,这样你的页面就不会再次破坏了(虽然从技术上来说这似乎更像是控制器或模型的工作):

 var test = '<%= ViewData["NAME"].ToString().Replace("'", "\\'") %>'; alert(test); 

尝试

 var test = '<%= ViewData["NAME"].ToString() %>'; alert(test); 

(注意<%= %>周围的引号)