Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何为包含日期的模板字符串调用javascript函数_Javascript_Html_Datetime - Fatal编程技术网

如何为包含日期的模板字符串调用javascript函数

如何为包含日期的模板字符串调用javascript函数,javascript,html,datetime,Javascript,Html,Datetime,我不熟悉Javascript和HTML。当我点击一个按钮时,会弹出一个屏幕,显示从XML中提取的日期。下面是代码 <script id="template" type="text/x-handlebars-template"> <table> <tr> <th>Posted on: </th> <td>function(){var myDate="{{posted}}"; myDate=

我不熟悉Javascript和HTML。当我点击一个按钮时,会弹出一个屏幕,显示从XML中提取的日期。下面是代码

<script id="template" type="text/x-handlebars-template">
<table>    
<tr>
    <th>Posted on: </th>
    <td>function(){var myDate="{{posted}}";
       myDate=myDate.split("-");
       var newDate=myDate[0]+"/"+myDate[1]+"/"+myDate[2];
       return(new Date(newDate).getTime());}?></td>
    </tr>
</table>
</script>      

张贴于:
函数(){var myDate=“{{posted}}”;
myDate=myDate.split(“-”);
var newDate=myDate[0]+“/”+myDate[1]+“/”+myDate[2];
返回(新日期(newDate).getTime();}>

提取的日期格式为(Y-m-d),如2012-12-03,必须更改为2013年12月3日。到目前为止,我已经完成了,当我点击按钮时,弹出窗口不会出现。当我在firebug中检查控制台时,我看到这个错误-
SyntaxError:function语句需要一个名称
。我无法使用任何事件功能,单击此按钮时应显示日期。如何执行此操作?

如果您的日期格式为yyyy-mm-dd,则可以使用以下内容将其重新格式化为dd-mm-yyyy:

function reformatDate(s) {
  var months = ['Jan','Feb','Mar','Apr','May','Jun',
                'Jul','Aug','Sep','Oct','Nov','Dec'];
  var t = s.split('-');
  return t[2] + '-' + months[--t[1]] + '-' + t[0];
}
<table>
  <tr>
    <th>Posted on: </th>
    <td id="myDate"></td>
  </tr>
</table>
应该在某个脚本元素中,或者从外部文件加载。在HTML中,您将看到如下内容:

function reformatDate(s) {
  var months = ['Jan','Feb','Mar','Apr','May','Jun',
                'Jul','Aug','Sep','Oct','Nov','Dec'];
  var t = s.split('-');
  return t[2] + '-' + months[--t[1]] + '-' + t[0];
}
<table>
  <tr>
    <th>Posted on: </th>
    <td id="myDate"></td>
  </tr>
</table>

我不知道如何从XML中获取值并将其传递给函数。在我看来,如果在服务器上读取XML,它可以将值直接写入HTML。如果从客户端使用AJAX访问它,那么您可以在回调中将其写入表中,而不是使用window.onload。

这是一个模板。但是我想显示从XML中提取的日期,以便在标记中显示。您可能需要首先分离
javascript
html
代码。并为函数命名,例如
function displayDate()