我有一个Python脚本,它以XML格式返回计算日期时间,如下所示:
<prev><date>2012,07,16</date><time>22:00:00</time></prev>
虽然我可以更改格式但我的问题是当我尝试使用返回的值创建JS日期对象时 - 我得到'无效日期':
$.ajax({
async: false,
type: "POST",
url: "/cgi-bin/prev_hour.py",
success: function(xml)
{
pdate = $(xml).find('date').text();
ptime = $(xml).find('time').text();
//alert prints correct date time ex 2012-07-16 22:00:00
},
error:function(xhr,err,html)
{
alert("Failed\nreadyState: "+xhr.readyState+"\nstatus: "+xhr.status + "\nresponseText: "+xhr.responseText);
}
var max_date = new Date("'" + pdate + ptime + "'");
alert(max_date);
我尝试了几种可能性,比如Python脚本以各种格式返回:
<prev><date>2012/07/16 </date><time>22:00:00</time></prev>
<prev><date>2012,07,16 </date><time>22,00,00</time></prev>
但是在尝试创建JS日期对象时,我仍然得到无效日期?
请让我知道实施它的正确方法。
答案 0 :(得分:0)
答案 1 :(得分:0)
您的日期字符串中不需要额外的引号,并且您需要在日期和时间组件之间留出空格,请尝试:
new Date(pdate + " " + ptime);
答案 2 :(得分:0)
此:
var max_date = new Date("'" + pdate + ptime + "'");
应该是:
var max_date = new Date(pdate + ' ' + ptime);
下次遇到此类问题时,请对发送给该功能的值发出警告,并查看其外观。