jquery 无法获取警报以显示正确的模型值

u91tlkcl  于 2022-11-03  发布在  jQuery
关注(0)|答案(1)|浏览(71)

我有这个密码

$(document).ready(function () {
       var edit= @Model.Edit.ToString().ToLower();
       if( edit !=true ) {
           $("#editWriteup").hide();
       }
       var date= @Model.EndDate;
      alert(date);
      $("#date").val(@Model.EndDate).change();
   });
</script>

它从我的模型中提取。我的模型在控制器中正确设置并将其正确传递到页面。此外,在页面加载中,它显示@Model.Enddate是正确的日期字符串“03/01/2020”,只是在警报中它没有正确显示。我需要在警报中传递的日期是03/01/2020。这就是当我在页面上检查模型时它所说的包含的内容。我最初尝试使用DateTime,并切换到使用EndDate的字符串,认为可能会解决它,但无济于事。
我得到的警报值是-2048。我不知道它从哪里得到-2048。当我传递datetime值并试图将其转换为字符串时,它也得到了-2048。@Model.Edit也能按预期正常工作
第一个
有谁能给我指出正确的方向,让警报实际上具有正确的字符串值。

d5vmydt9

d5vmydt91#

你的问题是你的剃刀已经呈现你的日期作为一个3数字,而不是作为字符串。
始终查看呈现的HTML/js
您的代码:

var date = @Model.EndDate;

将呈现为(例如):

var date = 01-27-2022;

js将其视为1 - 27 - 2022,其中= -2048
第一步是在您的值周围加上引号,因为您的模型具有string EndDate { get;set; },所以我将从以下内容开始:

var date = "@Model.EndDate";

您可能需要重新设置格式,例如,设置为yyyy-mm-dd,但一定要测试日期〉12日

相关问题