1

我有这个javascript代码,如果日期以这种格式插入,这在我的计算机上工作正常:yyyy-mm-dd,但在linux服务器(共享主机)上,如果日期以这种格式插入,工作正常:mm/dd /yyyyy

代码是这样的:

<html>
<head>
<script type="text/javascript">
function findDiff(){
var bl_data_checkin= document.getElementById("bl_data_checkin").value;
var bl_data_checkout= document.getElementById("bl_data_checkout").value;
var date1 = new Date(bl_data_checkin);
var date2=new Date(bl_data_checkout);

var ONE_DAY = 1000 * 60 * 60 * 24
var d1 = date1.getTime()
var d2 = date2.getTime()
var diff = Math.abs(d1 - d2)
document.getElementById("bl_giorni_permanenza").value=Math.round(diff/ONE_DAY);
}
</script>
</head>
<body>
<pre>
Enter Date1(yyyy-mm-dd): <input type="text" name="bl_data_checkin" id="bl_data_checkin" />
Enter Date2(yyyy-mm-dd): <input type="text" name="bl_data_checkout" id="bl_data_checkout" onBlur="findDiff();" />
Number of bl_giorni_permanenza: <input type="text" name="bl_giorni_permanenza" id="bl_giorni_permanenza" />

</pre>
</body>
</html>

如何在javascript代码中设置格式dd/mm/yyyy?

谢谢

4

1 回答 1

0

Javascript Date 有 4 个构造函数,如下所示:

new Date(); // current date
new Date(value); // int value representing a date since 1 January 1970 00:00:00 UTC 
new Date(dateString); // using Date.parse();
new Date(year, month [, day, hour, minute, second, millisecond]); // see my example


function parseDate(stringDate){
    var d = stringDate.split("/");
    return new Date(d[2], d[1]-1, d[0];
}

你用的是第3个,我真的不知道如何正确使用。我认为这种构造器格式取决于机器习语,因此您可以在此处阅读更多信息:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date

尝试使用第 4 个构造函数,或者看看这里了解如何使用 Date.parse() https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/parse

于 2014-09-06T01:59:18.267 回答