从JQuery访问MVC 3 Razor对象值

从JQuery访问MVC 3 Razor对象值,jquery,asp.net-mvc-3,razor,Jquery,Asp.net Mvc 3,Razor,我正在尝试在Razor对象中嵌入一个JQuery字符串,该对象可以访问它的属性……如下所示: var propertyID = $(this).attr('id'); var modelData = “@Model.InitialHistory.” + propertyID; modelData应该如下所示:@Model.InitialHistory.Property_1 (如果我在代码中键入@Model.InitialHistory.Property_1;它工作正常,只需动态选择ra

我正在尝试在Razor对象中嵌入一个JQuery字符串,该对象可以访问它的属性……如下所示:

var propertyID = $(this).attr('id');  
var modelData = “@Model.InitialHistory.” + propertyID;  
modelData应该如下所示:@Model.InitialHistory.Property_1

(如果我在代码中键入@Model.InitialHistory.Property_1;它工作正常,只需动态选择razor属性)

这样的事情是可能的还是我必须创建一个ajax调用

谢谢

你不能

javascript jQuery是客户端脚本,而razor是服务器端代码。

你不能


javascript jQuery是客户端脚本,razor是服务器端代码。

我只需要将Model.InitialHistory制作成一个列表,并在视图中循环。

我只需要将Model.InitialHistory制作成一个列表,并在视图中循环。

您不能像这样混合使用服务器端脚本和客户端脚本。为此,您可能必须使用ajax。您应该将razor对象中的所有数据放入javascript变量中。然后在客户端动态选择它,或者像上面提到的那样使用AJAX。JavaScript无法与Razor直接交互。请阅读本文:[从jquery脚本中的@Model获取值][1]希望这有帮助[1]:我发现Ajax是最好的解决方案。哇……没想到,将@Model放在jquery对象中-好主意!然而,我尝试了这个方法并得到了这个错误:序列化“System.Data.Entity.DynamicProxies……”类型的对象时检测到循环引用。在这一点上,在我看来,进行Ajax调用可能是更好的“解决方案”(我拥有的模型大约有150多列数据,这在序列化为JSON时为错误留出了更多空间)非常感谢您的帮助!!您不能这样混合服务器端和客户端脚本。您可能必须使用ajax。您应该将razor对象中的所有数据放入(a)javascript变量中。然后在客户端动态选择它,或者像上面提到的那样使用AJAX。JavaScript无法直接与Razor交互。请阅读本文:[从jquery脚本中的@Model获取值][1]希望这有帮助[1]:我发现Ajax是最好的解决方案。哦,哇……我没有想到,将@Model放在JQuery对象中——这是个好主意!但是,我尝试了一下,却发现了这个错误:序列化“System.Data.Entity.DynamicProxies”类型的对象时检测到循环引用在这一点上,在我看来,进行Ajax调用可能是一个更好的“解决方案”(我拥有的模型大约有150多列数据,在序列化为JSON时会留下更多的错误空间),非常感谢您的帮助!!