如何使用JavaScript/jQuery格式化现有日期
我正在尝试使用JavaScript/jQuery格式化日期时间,但没有实现。我的代码如下如何使用JavaScript/jQuery格式化现有日期,javascript,jquery,Javascript,Jquery,我正在尝试使用JavaScript/jQuery格式化日期时间,但没有实现。我的代码如下 <div id="divID"></div> <script> var formatDate = function(date){ return date.getDate() + "/" + date.getMonth() + "/" +date.getYear() + " "+ date.getHours() + ":" + da
<div id="divID"></div>
<script>
var formatDate = function(date){
return date.getDate() + "/" + date.getMonth() + "/" +date.getYear() + " "+ date.getHours() + ":" + date.getMinutes() + ":" + date.getMintutes() + ":" + date.getSeconds();
}
var timestamp="2016-12-16 07:58:30 AM ";
var date= new Date(timestamp);
document.getElementById('divID').innerHTML = formatDate(date);
</script>
var formatDate=函数(日期){
返回日期.getDate()+“/”+date.getMonth()+“/”+date.getYear()+“+date.getHours()+”:“+date.getMinutes()+”:“+date.getMinutes()+”:“+date.getSeconds();
}
var timestamp=“2016-12-16 07:58:30 AM”;
var日期=新日期(时间戳);
document.getElementById('divID')。innerHTML=formatDate(日期);
这里我有现有的时间
2016-12-16 07:58:30 AM
,我需要将其更改为16-12-2016 07:58:30 AM
,但这里我无法获得正确的输出。您的代码有一些问题:
- 出现语法错误,正在调用
getMintutes()
- 您似乎试图显示分钟数两次,因此可以删除其中一个呼叫
比getFullYear()
getYear()
- 应该使用
而不是-
来限定日期值李>/
- 通过检查
hours<12
- 您的时间戳字符串无效。它不应该包含“AM”或“PM”-因此该代码在Firefox中不起作用
var formatDate=函数(日期){
返回日期.getDate()+“-”+日期.getMonth()+“-”+日期.getFullYear()+”+('0'+日期.getHours()).slice(-2)+:“+('0'+日期.getMinutes()).slice(-2)+:”+('0'+日期.getSeconds()).slice(-2)+++(日期.getHours()<12?'AM':'PM');
}
var timestamp=“2016-12-16 07:58:30”;
var日期=新日期(时间戳);
document.getElementById('divID')。innerHTML=formatDate(日期)代码>
您的代码有几个问题:
- 出现语法错误,正在调用
getMintutes()
- 您似乎试图显示分钟数两次,因此可以删除其中一个呼叫
getFullYear()
比getYear()
- 应该使用
-
而不是/
来限定日期值李>
- 通过检查
hours<12
- 您的时间戳字符串无效。它不应该包含“AM”或“PM”-因此该代码在Firefox中不起作用
考虑到这一点,请尝试以下方法:
var formatDate=函数(日期){
返回日期.getDate()+“-”+日期.getMonth()+“-”+日期.getFullYear()+”+('0'+日期.getHours()).slice(-2)+:“+('0'+日期.getMinutes()).slice(-2)+:”+('0'+日期.getSeconds()).slice(-2)+++(日期.getHours()<12?'AM':'PM');
}
var timestamp=“2016-12-16 07:58:30”;
var日期=新日期(时间戳);
document.getElementById('divID')。innerHTML=formatDate(日期)代码>
是一个独立的插件。您需要使用
标记显式加载该插件。是一个单独的插件。您需要使用
标记显式加载它。您使用的时间戳将返回无效日期,因此您应该删除AM
。使用您可以这样做:
var timestamp=“2016-12-16 07:58:30”;
var formattedDate=时刻(时间戳).format('DD-MM-YYYY h:MM:ss A');
console.log(格式化日期)代码>
您使用的时间戳将返回无效日期,因此您应该删除AM
。使用您可以这样做:
var timestamp=“2016-12-16 07:58:30”;
var formattedDate=时刻(时间戳).format('DD-MM-YYYY h:MM:ss A');
console.log(格式化日期)代码>
您可以使用名为moment.js的库
您可以使用名为moment.js的库
您可以使用jQueryUIDatePicker获取格式化日期,如下所示
let myDate = '2020-11-10';
$.datepicker.formatDate('dd-M-yy', new Date(myDate));
上面的代码将返回2020年11月10日。您可以使用JQuery UI Datepicker获取格式化日期,如下所示
let myDate = '2020-11-10';
$.datepicker.formatDate('dd-M-yy', new Date(myDate));
上面的代码将返回2020年11月10日。您可以使用JQuery UI Datepicker小部件获得所需的输出,如下所示
var timestamp="2016-12-16 07:58:30 AM ";
var desiredTimestamp = $.datepicker.formatDate('dd-mm-yy', new Date(timestamp.split(' ')[0])) + ' ' + timestamp.split(' ')[1] + ' ' + timestamp.split(' ')[2];
您可以使用jQueryUIDatePicker小部件获得所需的输出,如下所示
var timestamp="2016-12-16 07:58:30 AM ";
var desiredTimestamp = $.datepicker.formatDate('dd-mm-yy', new Date(timestamp.split(' ')[0])) + ' ' + timestamp.split(' ')[1] + ' ' + timestamp.split(' ')[2];
检查这个插件你可以使用moment.js
这很简单。检查这个插件你可以使用moment.js
这很简单。时间戳也应该是“2016-12-16 07:58:30”
没有“AM”抱歉这里AM/PM
缺失。我还需要AM/PM
@satya为你在所有浏览器中检查这个。它的工作chrome fine bur firefox不工作。时间戳应该是“2016-12-16 07:58:30”
没有“AM”抱歉AM/PM
丢失。我还需要AM/PM
@satya为您添加,请在所有浏览器中检查此项。它的chrome fine浏览器不工作。@satya,你从时间戳中删除AM
了吗?因为答案中的代码是有效的。点击运行代码片段
按钮查看其运行情况。另外,在Firefox上也是如此。@satya,您是否已从时间戳中删除AM
?因为答案中的代码是有效的。点击运行代码片段
按钮查看其运行情况。另外,在Firefox上也是如此。