gpt4 book ai didi

javascript - 将 C# 变量传递给 jsrender 模板中的辅助函数

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:25:46 25 4
gpt4 key购买 nike

我需要将我的模型值之一传递给 jsrender 模板中的函数。我尝试使用 @ 访问 C# 变量,但它不起作用。下面是我的代码

<script type="text/x-jsrender" id="TemplateDate">>
{{:~formatTemplateDate(Model.EstimatedCompletionDate)}}
</script>

这是我的辅助函数。

$.views.helpers({
formatTemplateDate: function (dateEstimated) {
"use strict";
if (dateEstimated !== null) {
if (!isSafari) {
var options = {
year: "numeric",
month: "short",
day: "numeric",
hour: "2-digit",
minute: "2-digit"
};
return dateEstimated.toLocaleTimeString("en-us", options);
} else {
return dateEstimated;
}
} else {
return null;
}
}
});

这是我在页面中得到的错误

错误:n.toLocaleDateString 不是函数。

提前致谢。

吃饭。

最佳答案

我找到了解决方法。我们不能将 @Model.EstimatedCompletion 日期时间变量值传递给辅助函数。需要将其转换为字符串,并且在辅助函数中需要将其转换回 Datetime()。下面是修改后的代码。

<script type="text/x-jsrender" id="TemplateDate">>
{{:~formatTemplateDate('@Model.EstimatedCompletionDate')}}
</script>

在我的辅助函数中,我将其转换回日期类型,var formatedDate = new Date(date);

$.views.helpers({
format: function (date) {
"use strict";
var formatedDate = new Date(date);
if (!isSafari) {
var options = {
year: "numeric",
month: "short",
day: "numeric"
};
return formatedDate.toLocaleDateString("en-us", options);
} else {
return formatedDate;
}
}
});

谢谢,

吃饭。

关于javascript - 将 C# 变量传递给 jsrender 模板中的辅助函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44094468/

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