我正在尝试将C# DateTime变量转换为能够通过NewtonSoft.Json传递到Javascript函数中的东西。
目前我使用的是:
var jsonSettings = new JsonSerializerSettings();
jsonSettings.DateFormatString = "dd/MM/yyy hh:mm:ss";
string modelFromDate = JsonConvert.SerializeObject(@Model.FromDate, jsonSettings);
但是,这似乎不起作用,因为当我使用 Chrome 开发工具时,我收到错误
未定义模型开始日期
在以下代码中:
$(".go").on("click", function () {
if (new Date(modelFromDate) < new Date(1994, 1, 1)) {
alert("invalid date");
}
});
我正在使用 ASP.NET 核心MVC。
未定义模型开始日期
这是因为在 JavaScript 中访问 C# 变量之前,您没有使用@
简单。
此外,您可以使用Date.parse
.它将返回milliseconds
数,然后您需要围绕它包装一个Date
构造函数,如下所示:
$(".go").on("click", function () {
var jsFromDate = new Date(Date.parse(@modelFromDate));
if (jsFromDate < new Date(1994, 1, 1)) {
alert("invalid date");
}
});