javascript - 如何在 JavaScript 中从 Razor 模型对象获取 JSON 对象

标签 javascript asp.net json asp.net-mvc asp.net-mvc-5

在 viewmodel 对象中,以下是属性:

  public IList<CollegeInformationDTO> CollegeInformationlist { get; set; }

在VIEW中,javascript如下:

   var obj = JSON.stringify('@Model.CollegeInformationlist');
   alert(obj[1].State);  //NOT WORKING, giving string char

      $.each('@Model.CollegeInformationlist', function (i, item) {
    var obj = JSON.stringify(item);
    var r = $.parseJSON(obj);
    alert(r.State);    //just giving undefined.
    });

请指导我如何在 javascript 中获取 JSON 对象。

最佳答案

您可以使用以下内容:

var json = @Html.Raw(Json.Encode(@Model.CollegeInformationlist));

这将输出以下内容(没有看到您的模型,我只包含一个字段):

<script>
    var json = [{"State":"a state"}];   
</script>

Working Fiddle

AspNetCore

AspNetCore 使用 Json.Serialize 而不是 Json.Encode

var json = @Html.Raw(Json.Serialize(@Model.CollegeInformationlist));

MVC 5/6

您可以使用 Newtonsoft 来执行此操作:

    @Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model, 
Newtonsoft.Json.Formatting.Indented))

这使您可以更好地控制 json 格式,即如上所述的缩进、驼峰式等。

关于javascript - 如何在 JavaScript 中从 Razor 模型对象获取 JSON 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31522054/

相关文章:

c# - "using" block 对SqlCommand初始化的好处

javascript - 如何使用 angular js 正确显示 JSON 响应?

ios - 在 NSDictionary 中传递 NSDate 并转换为 NSData 以进行 jsondata 修复

javascript - 在 JavaScript 中迭代分层对象

javascript - 如何在javascript中对两个对象和数组进行映射

javascript - 我应该将我的 javascript 拆分成多个文件吗?

javascript - 如何使用 React Navigation 动态更改选项卡标题?

c# - 结合背景图像和文本并将其固定

ios - 从 JSON 中获取对象

asp.net - 数据库 'DB Name'无法访问