【发布时间】:2010-11-14 21:20:23
【问题描述】:
我最近一直在使用 ASP.NET MVC 和 Javascript/jQuery,我似乎正朝着我总是需要将一些动态值“传递给”我的 javascript 的方向前进。当脚本在页面中时,我做了这样的事情:
var isEditable = <%=ViewData["editable"]%>
我喜欢这种快速和简单的方式,就像我在 HTML 中注入一个值一样。但这闻起来。真的,真的很糟糕。而且它破坏了 Visual Studio 的智能感知和代码格式,使我的脚本难以阅读和理解。
我想到另一个解决方案是将我的数据传递到隐藏字段,并使用 Javascript 引用...
<input type="hidden" id="editable" value="<%=ViewData["editable"]%>" />
var isEditable = $("#editable").attr("value");
这可能要好得多,因为它可以保持脚本完整,并允许我将其移动到外部 .js 文件。但是这个解决方案的某些方面似乎也不理想。还是只有我一个人?
谁能推荐将数据传递到脚本中的解决方案和最佳实践?如果我的脚本一开始就严重依赖来自控制器的视图数据,我是否走错了路?
【问题讨论】:
-
使用 AJAX 将模型中的数据“拉”到控制器中的某种数据存储中怎么样?
-
我认为 AJAX 在我所指的案例类型中会过分杀伤力......我的脚本通常只需要知道来自控制器/模型的一些数据(已经存在的数据在初始页面执行时),因此发出另一个网络回调控制器似乎有点多。
标签: javascript jquery asp.net-mvc