我目前正在尝试格式化“列表”中的日期。最后我应该得到 2015 年 11 月 6 日。 14:51 2015 年 11 月 2 日。 13:56 2015 年 11 月 6 日。 14:51 2015 年 11 月 2 日。 13:56
但是我明白了 2015 年 11 月 2 日。 13:56 2015 年 11 月 2 日。 13:56 2015 年 11 月 2 日。 13:56 2015 年 11 月 2 日。 13:56
我不希望每个元素都有相同的日期。我没有明白我的代码有什么问题。 以下是一个更清晰的概述:jsfiddle
非常感谢您的帮助!!
<html>
<head>
<script type="text/javascript" src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script>
$(document).ready(function(){
var date = $('.start-date').text();
var strArray = date.match(/(\d+)/g);
var i = 0;
for (i = 0; i < strArray.length; i++)
{
var d = parseInt(strArray[i]);
var dateF = new Date (d);
var dd = dateF.getDate();
var mm = dateF.getMonth() + 1;
var yyyy = dateF.getFullYear();
var hh = dateF.getHours();
var mn = dateF.getMinutes();
if(dd<10){
dd = '0' + dd
}
if(mm<10){
mm='0'+mm
}
var today = dd+'.'+mm+'.'+yyyy+'. '+hh+':'+mn;
console.log(today);
$( ".start-date" ).each(function( index ) {
$( this ).text(today);
});
};
});
</script>
</head>
<body>
<div class="start-date">/Date(1446817860000)/</div>
<div class="start-date">/Date(1446468960000)/</div>
<div class="start-date">/Date(1446817860000)/</div>
<div class="start-date">/Date(1446468960000)/</div>
</body>
</html>
最佳答案
您的代码只需将所有日期字符串连接在一起,然后将结果应用于该长字符串。
您的代码属于each
循环!
例如像这样:
$(document).ready(function () {
$(".start-date").each(function (index) {
var date = $(this).text();
var strArray = date.match(/(\d+)/g);
var i = 0;
for (i = 0; i < strArray.length; i++) {
var d = parseInt(strArray[i]);
var dateF = new Date(d);
var dd = dateF.getDate();
var mm = dateF.getMonth() + 1;
var yyyy = dateF.getFullYear();
var hh = dateF.getHours();
var mn = dateF.getMinutes();
if (dd < 10) {
dd = '0' + dd
}
if (mm < 10) {
mm = '0' + mm
}
var today = dd + '.' + mm + '.' + yyyy + '. ' + hh + ':' + mn;
console.log(today);
$(this).text(today);
};
});
});
关于javascript - 使用 JavaScript 格式化 .Net 日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33614987/