Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.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模板中格式化json日期_Javascript_Jquery_Json_Jquery Mobile - Fatal编程技术网

在javascript模板中格式化json日期

在javascript模板中格式化json日期,javascript,jquery,json,jquery-mobile,Javascript,Jquery,Json,Jquery Mobile,我的控制器使用JSON向视图发送日期数据。在视图上,我将这些数据发送到jQuery模板以显示。我的问题是日期,因为我得到这个值 "/Date(1245398693390)/" 所以我尝试过使用FireBug,但使用FireBug我可以看到在第行抛出了一个错误 var value = new Date(parseInt(jsonDate.substr(6))); 带着错误 jsonDate.substr不是函数 如果这很重要的话,我将尝试使用jQuery mobile实现它 更新 <sc

我的控制器使用JSON向视图发送日期数据。在视图上,我将这些数据发送到jQuery模板以显示。我的问题是日期,因为我得到这个值

"/Date(1245398693390)/"
所以我尝试过使用FireBug,但使用FireBug我可以看到在第行抛出了一个错误

var value = new Date(parseInt(jsonDate.substr(6)));
带着错误

jsonDate.substr不是函数

如果这很重要的话,我将尝试使用jQuery mobile实现它

更新

<script id="myDataTemplate" type="text/html">          
    <li>@Html.ActionLink("${GetDateString(Date)}", "Fetch", "Data")</li>            
</script>
工作试验

   var aa = "/Date(1245398693390/".match(/\d+/); 

   var bb = parseInt(aa);

   var date = new Date(bb);

   alert(date);

您得到的实际上是javascript代码,而不是json本身。这意味着,如果执行该代码,它将生成一个新的
Date
对象,该对象从unix纪元日期起的#毫秒开始。换句话说,您需要将该值视为JSONP。@Kristian谢谢您的时间。问题已更新。你能用具体的例子来添加解决方案吗?所以,当你在控制台上运行
jsonDate
var时,你会得到
“/Date(1245398693390)/”
?我刚刚发布了最初使用的js函数。它在var值=。。。线路。当然,我使用了@Html.ActionLink(${GetDate(Date)}”…是的,这是因为jsonDate的值不是正确的字符串。因此函数
substr
不可用。因此,为了继续调试此函数,您需要在该函数的中断行之前抛出一个
console.log
,以准确识别jsonDate的值,并确保它是ac实际上是一个字符串。:)(我想该是我签约的时候了,我从来没有用过它。干杯
function GetDate(jsonDate) {
  var value = new Date(parseInt(jsonDate.substr(6))); //breaks
  return value.getMonth() + 1 + "/" + value.getDate() + "/" + value.getFullYear();
}
   var aa = "/Date(1245398693390/".match(/\d+/); 

   var bb = parseInt(aa);

   var date = new Date(bb);

   alert(date);