gpt4 book ai didi

c# - Javascript 不接受日期或字符串作为使用 Razor 和 MVVM 的参数

转载 作者:行者123 更新时间:2023-12-03 10:17:40 25 4
gpt4 key购买 nike

我的 JavaScript 方法没有触发或给出不正确的值有问题。

Javascript:

function JSMethod(UserID, medalDate, medalCategory{
//Do things.
};

HTML:
//MediaList consists of: int UserID, DateTime DateEarned, string Reason
@foreach (var medal in @Model.medalList)
{
<a onclick="JSMethod(@medal.UserID, @medal.DateEarned.ToShortDateString(), @medal.Reason.ToString())" click here</a>
}

JavaScript 方法似乎没有采用 @model.Reason作为参数,将字符串传递给 Javascript 函数是否有问题?

当日期( @medal.DateEarned )被传入时,它要么忽略它,要么将其作为 ToString('DD/MM/YYYY') 传入。它最终划分,例如,2014 年 3 月 12 日,导致传入的参数为 0.00198...

无论如何让我的 JavaScript 函数接受我的日期时间和字符串作为参数?

任何帮助表示赞赏,谢谢。

最佳答案

混合 Razor 和 JavaScript 时,您必须记住两种语言的语法:在这种情况下,您需要在 JavaScript 中使用引号将 Razor 注入(inject)的值括起来:

<a onclick="JSMethod(@medal.UserID, '@medal.DateEarned.ToShortDateString()', '@medal.Reason.ToString()')" click here</a>

请注意日期和原因字符串周围的刻度线。如果 UserID 不是数字,它也需要刻度。

关于c# - Javascript 不接受日期或字符串作为使用 Razor 和 MVVM 的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22341103/

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