我试图在我的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中调用函数时,我是否缺少某些内容?或者有没有更好的方法来做到这一点我错过了?