我正在开发asp.net mvc2应用程序。我有一个ViewModel定义如下:
public class TestViewModel
{
/// <summary>
/// Get and Set the EnabledSections
/// </summary>
public List<string> EnabledSections { get; set; }
}
我正在使用操作方法中的列表填充TestViewModel的属性EnabledSections:
public ActionResult TestAction(Student student, string[] sections = null)
{
var model = new TestViewModel
{
EnabledSections = model.TestSections.Where(s => s.Value.Item2 == true).Select(s => s.Key).ToList();
}
}
我需要访问jquery方法中的EnabledSections:
function CheckEnabledSection(){
}
有人可以指导我解决上述问题吗?
答案 0 :(得分:2)
首先,您必须将视图模型传递到视图中,因此从您的操作中看起来如下所示:
return View("ViewName",model);
另外,请务必在视图中声明模型的类型:
@model TestViewModel
然后,在您的视图中,您需要将模型中的任何信息添加到您的js:
<script>
@{
var jsSerializer = new JavaScriptSerializer();
}
var enabledSections = @jsSerializer.Serialize(Model.EnabledSections);//serialize the list into js array
</script>
现在您可以在javascript中访问js变量enabledSections