gpt4 book ai didi

javascript - 解析 Json 编码数组中的日期

转载 作者:行者123 更新时间:2023-12-03 04:57:29 24 4
gpt4 key购买 nike

我已经构建了一个 MVC 站点,并将我的模型传递给 View ,并尝试在 View 中的某些 javascript 中使用它:

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

我的目标是在接受对象数组作为数据源的自定义日历对象中使用这些记录。但是,数据源期望日期变量知道在哪里放置约会等。我读到 Json 没有自己的任何日期格式。因此,从编码返回的所有日期的格式如下:

/Date(1462921200000)/

该对象似乎不接受这一点,并且 View 上没有显示任何内容。在我读过的帖子中,他们指出您可以将日期解析回正确的格式,但这似乎仅适用于单个值。

我的问题是:有没有一种简单的方法可以获取我得到的编码对象并将日期解析为正确的格式?或者我必须循环它们才能做到这一点?

谢谢。

最佳答案

警告:这个答案是固执己见的。自以为是的部分是:当你需要用 Json 完成某些事情时,请使用 Json.Net .

namespace System.Web.MVC
{
public static class HtmlHelperJsonExtensions
{
public string JsonEncode(this System.Web.MVC.HtmlHelper html, object o)
{
var jsonSettings = new Newtonsoft.Json.JsonSerializerSettings()
{
// Here you can apply a LOT of formatting, as a small example regarding dates:
// 1 - formats dates as iso strings (probably what you want)
DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat,
// 2 - formats dates with Microsoft format (what you're experiencing)
//DateFormatHandling = Newtonsoft.Json.DateFormatHandling.MicrosoftDateFormat,
// 3 - formats date in a custom format as for DateTime.ToString(string) overload
//DateFormatString = "yyyy-MM-dd"
Formatting = Indented
};

var json = Newtonsoft.Json.JsonConvert.SerializeObject(o, jsonSettings);

return html.Raw(json);
}
}
}

用法:

var records = @Html.JsonEncode(Model);

引用优秀的 Json.Net 文档 here以获得见解。

关于javascript - 解析 Json 编码数组中的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42373420/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com