php - 在 Underscore 模板中格式化日期

标签 php javascript date backbone.js underscore.js

我在 underscore 模板 中使用的 Backbone 模型中有一个 date 属性。
date 值采用整数格式,如 123456432

我想在下划线模板中以 dd/mm/yyyy 格式显示此整数值,就像我在 PHP 中所做的那样。

这是我的下划线模板

<script type="text/template" id="item-template">    
    <span class="label label-info"><%- name %> <em> <%= date %> </em>  </span>
</script>

最佳答案

下划线模板让您可以通过 print 以您认为合适的任何方式调用函数和输出文本。例如,要将您的时间戳转换为日期,您可以使用类似这样的东西

<script type="text/template" id="tpl-1">    
    <span class="label label-info"><% print(new Date(date*1000)) %></span>
</script>

请注意,我假设时间戳来自 PHP,因此以秒为单位。在 Javascript 中,时间戳预计以毫秒为单位,这就是我将其乘以 1000 的原因。

如果您的时间戳来自 Javascript,请使用

<script type="text/template" id="tpl-1">    
    <span class="label label-info"><% print(new Date(date)) %></span>
</script>

Formatting this date object可以这样做

<script type="text/template" id="tpl-2">    
    <span class="label label-info"><% 
        var d = new Date(date*1000), // or d = new Date(date)
            fragments = [
                d.getDate(),
                d.getMonth() + 1,
                d.getFullYear()
            ]; 
            print(fragments.join('/'));
        %></span>
</script>

或者将所有这些分解为一个函数调用(在 _.template 上,但您可以将其存储在任何地方)

_.template.formatdate = function (stamp) {
    var d = new Date(stamp*1000), // or d = new Date(date)
        fragments = [
            d.getDate(),
            d.getMonth() + 1,
            d.getFullYear()
        ]; 
    return fragments.join('/');
};
<script type="text/template" id="tpl-3">    
    <span class="label label-info"><%= _.template.formatdate(date) %></span>
</script>

还有一个演示 http://jsfiddle.net/Dyzm8/

关于php - 在 Underscore 模板中格式化日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18628479/

相关文章:

jQuery 倒计时未正确倒计时

javascript - 联系表反垃圾邮件 JavaScript 和/或 PHP

java - Java中以yyyymmddhhmmss.mmm格式递增日期

php - 如何清理一个3000万条记录的表

php - 在php中查找子字符串的最有效方法

javascript - 对每个元素应用自定义 Angular 过滤器

javascript - 您如何称呼一组共享公共(public)上下文的 Javascript 闭包?

java - Swing Timer 和 ActionEvents 的问题

php - require_once 和 include_once 不能正确解析文件

php - date() 显示错误的时间