如果我的模型是MVC3中的QueryTable,如何访问Javascript中的项目数据
How to access item data in Javascript, if my Model is a QueryTable in MVC3?
我是MVC的新手。我发现这个网站很有帮助。但我一直在努力从Javascript访问Model数据。这是我的问题。
我知道如果我的控制器返回一个项目,那么我可以在<script>
部分中使用<%: Model.Name%>
。
但对于Model中有更多项的情况,<%foreach (var item in Model) %>
在<script>
中不起作用,即使它在视图的其他部分也起作用。
有人能告诉我这件事吗?
还有人能推荐一本关于MVC和Razor的好书吗?
了解更多关于Model
类的信息会很有帮助。最有可能的是,你有一个带有某种集合的类:
public class CollegeCourse
{
public string Professor {get;set;};
public List<Student> Students {get;set;};
}
您可以在服务器端代码中循环此集合,如下所示:
<% foreach (var student in Model.Students) %>
至于JavaScript。。。您给出的示例是如何循环使用List<T>
并在服务器端构建一些HTML的示例。但当你的页面加载到浏览器中时,模型数据早已不见了。
要与JavaScript中的模型数据交互,您需要选择一种将数据发送到浏览器的策略。一些想法:
- 在加载页面时将数据转换为JSON,然后在
<script>
标记中写出 - 将数据嵌入HTML标记中,也许可以使用
data-
属性。然后您可以使用jQuery来检索这些值 - 向控制器添加一个操作,该操作将以JSON形式返回所需的数据。然后,在页面加载后,您可以使用jQueryAJAX调用来检索模型数据,并对其进行任何魔术处理
前两种选择并不是真正的好做法。我建议您研究AJAX方法。下面是一个快速的例子,展示了如何做到这一点。这并不太难,MVC3甚至有一些内置的帮助程序,可以简化AJAX调用的设置。
如果你对ASP.NET总体上很满意,那么《专业ASP.NET MVC3》是一本很好的书,可以让你了解MVC和Razor。
相关文章:
- 从JavaScript访问struts操作中的属性
- 通过 javascript 访问类
- 如何使用JavaScript访问HTML链接内容
- 使用javascript访问php变量
- Javascript-访问对象
- 使用Oauth使用Javascript访问Api
- 通过JavaScript访问需要身份验证的页面
- 如何使用javascript访问sails.js模型中的属性
- 用javascript访问数组中的数组
- 从Symfony2中的javascript访问php变量
- 从Middleman中的Javascript访问config.rb
- 如何从javascript访问表单数据
- 创建一个html表单并使用javascript访问中的python脚本
- 使用JavaScript访问Chrome扩展的剪贴板
- 如何从javascript访问sqlite3数据库表值
- 如何从 JavaScript 访问 Sign Applelet 方法
- JavaScript:访问继承子模块中的“封闭”变量
- 使用 FourSquare API 和 javascript 访问场地提示
- 如何从javascript访问MySql数据库的数据
- 如何通过 javascript 访问参数化函数背后的代码