使用jQuery

时间:2015-10-08 11:28:55

标签: jquery asp.net-mvc

我在视图中有一个列表:

 @model List<LabelPrinting.Models.UserModel>

有没有办法用jQuery获取列表中单个成员的所有属性:

 var user = @Model[0];

此语句有语法错误,但当我使用单引号时它没有,但我没有得到用户数据:

 var user = '@Model[0]';

我宁愿不使用JSON编码方法:

 var users;
 users = function () { return @Html.Raw(Json.Encode(Model)) }();

我知道这有效,我可以通过以下方式获取用户的所有数据:

 var user = users[0];

我知道我可以通过以下方式获得用户的一些属性:

 var userId = '@Model[0].UserId';

为什么我无法获得整个用户?

1 个答案:

答案 0 :(得分:2)

  

此语句有语法错误

var user = @Model[0];

因为javascript不知道类的类型,即UserModel,正如您已经提到的那样,您必须使用Json.Encode将c#对象转换为json,以通过以下语句创建javascript对象。

users = function () { return @Html.Raw(Json.Encode(Model)) }();
  

但是当我使用单引号时它不会,但我没有得到用户数据:

var user = '@Model[0]';

因为现在您分配C#的对象,但字符串的值为@Model[0]。如果您打印Console.log(用户),它将是字符串@Model[0]