我的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')
传递,并最终划分,例如,12/03/2014导致传入的参数0.00198 ......
有没有让我的JavaScript函数接受我的日期时间和字符串作为参数?
感谢任何帮助,谢谢。
答案 0 :(得分:0)
混合使用Razor和JavaScript时,您必须记住两种语言的语法:在这种情况下,您需要在注入Razor的值中使用JavaScript中的引号:
<a onclick="JSMethod(@medal.UserID, '@medal.DateEarned.ToShortDateString()', '@medal.Reason.ToString()')" click here</a>
请注意日期和原因字符串周围的刻度线。如果UserID不是数字,它也需要滴答。