我如何格式化这个日期,如:Today
,Yesterday
或<date>
在Telerik的剑道ASP.NET MVC网格?
columns.Bound(c => c.DesktopActivation)
.ClientTemplate("#= DesktopActivation ? renderActivationInfo(DesktopActivation) : '<span style=\"color:\\#999999\">Unused</span>' #");
<script type="text/javascript">
function renderActivationInfo(activationData)
{
return activationData.MachineName + kendo.toString(new Date(parseInt(activationData.DateActivated.substr(6))), 'MMM d, yyyy');
}
</script>
似乎无法在Javascript部分内使用此C#实用程序方法:
public static string GetSpecialDate(DateTime date)
{
int days = ((TimeSpan)(DateTime.Now - date)).Days;
switch(days)
{
case 0:
return "Today";
case 1:
return "Yesterday";
default:
return date.ToString("MMM dd, yyyy", CultureInfo.InvariantCulture);
}
}
您只需要调整您的javascript函数以弄清楚c#方法的作用。这可能需要针对特定对象进行调整,但这将使您朝正确的方向前进:
function renderActivationInfo(activationData)
{
var date = kendo.parseDate(activationData.DateActivated).setHours(0, 0, 0, 0);
var today = new Date().setHours(0, 0, 0, 0);
var yesterday = new Date();
yesterday = yesterday.setDate(yesterday.getDate() - 1);
yesterday = new Date(yesterday).setHours(0, 0, 0, 0);
if (date == today) {
return activationData.MachineName + "Today";
}
if (date == yesterday) {
return activationData.MachineName + "Yesterday";
}
return activationData.MachineName + kendo.toString(kendo.parseDate(activationData.DateActivated), "MMM dd, yyyy");
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句