c# - 如何在 javascript 中访问 ViewData

标签 c# model-view-controller

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

我已经在 Controller 和 View 的 document.ready 事件上设置了 ViewData 对象,我正在尝试查看同一个 ViewData 对象的内容,如下所示:

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

此后我没有收到警告消息,此语句后我的脚本都不会运行。我假设此脚本无效,因此之后会杀死所有内容。我已经尝试了同一个脚本的几个不同变体,但没有任何运气。

我在这里错过了什么?

提前致谢, 比利

最佳答案

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

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

编辑:

我注意到您正在使用 NAME 作为 key ;这个名字可以有单引号吗?如果任何值都可能包含一个值,那么您将需要这样的东西,这样您的页面就不会再次中断(尽管从技术上讲,这似乎更像是 Controller 或模型的工作):

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

关于c# - 如何在 javascript 中访问 ViewData,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2374707/

相关文章:

cocoa - Cocoa 中的 MVC 模式和模型对象初始化

model-view-controller - 可能是 Chrome 历史错误 - 执行 PRG,当再次导航到同一表单时 - 没有添加历史条目

c# - 未在 Azure 包中创建 Web.config

c# - .Net Core多语言路由

c# - datagridview 添加行

c# - 如何在 Xamarin.iOS 中使用#available/@available

c# - 无法使用我的身份服务器从 native 应用程序调用 API

java - 本地化路由和 URL 字符串

java - 具有数据持久性的概念的名称

c# - 关于 WinForms 应用程序的 MVC 模式的建议