使用JS函数格式化日期在HTML td中

时间:2018-05-05 14:17:49

标签: javascript html handlebars.js

我试图在我的HTML中将MySQL表中的日期显示为MM / DD / YYYY。为此,我在script.js文件中构建了一个函数:

function formatDate(date) {
    var d = new Date(date),
        month = '' + (d.getMonth() + 1),
        day = '' + d.getDate(),
        year = d.getFullYear();

    if (month.length < 2) month = '0' + month;
    if (day.length < 2) day = '0' + day;

    return [month, day, year].join('/');
}

我试图从我的把手文件中调用JS函数,我在控制台中收到一条错误:

   Uncaught SyntaxError: missing ) after argument list
 <td><script>formatDate(Sat May 05 2018 00:00:00 GMT+0000 (UTC));</script></td> 

在做了一些搜索后,似乎问题可能是一些特殊字符被传递到函数中。数据库中的字段类型为date而不是datetime,所以我甚至不确定为什么一年之后会有任何字符。我正在调用这样的函数:

  {{#each results}}
    <tr>
        <input type="hidden" value="{{this.id}}">
        <td>{{this.recipient_fname}}</td>
        <td>{{this.recipient_lname}}</td>
        <td>{{this.email}}</td>
        <td><script>formatDate({{this.date}})</script></td>
      <td>{{this.type}}</td>
      <td>{{this.region}}</td>
      <td>{{this.created_by}}</td>
    </tr>

  {{/each}}

</table>
{{/if}}

<button onclick="exportTableToCSV('awards.csv')">Export To CSV File</button>
<script src="script.js"></script>

在HTML中调用函数时,我是否缺少某些内容?或者有没有更好的方法来做到这一点我错过了?

0 个答案:

没有答案