更改日期输入值格式

问题描述 投票:0回答:7

我在HTML页面中实现了一个假表单。我需要转换几个输入才能使用POST请求发送。

我面临的一个问题与日期格式有关。我有一个<input type="date">which返回它的值如下:2017-12-28,我需要更改其格式并将其转换为:28/12/2017。我只能使用jQuery。

有没有特定的功能来做到这一点?或者我必须解析它?我很丢失:(

javascript jquery html
7个回答
1
投票

以下是不使用任何插件的解决方案。

var defaultDate = "2017-12-28";
var splitedValues = defaultDate.split("-");
var newDateFormat = splitedValues[2]+"/"+splitedValues[1]+"/"+splitedValues[0];
console.log(newDateFormat);
alert(newDateFormat);

1
投票

var date = new Date('2017-12-28');
alert(date.getDate() + '/' + (date.getMonth() + 1) + '/' +  date.getFullYear());

0
投票

检查一下。

var parts = '2017-12-28'.split('-'); 
var dmyDate = parts[2] + '/' + parts[1] + '/' + parts[0];
console.log(dmyDate);

0
投票
var userBirthDate = '2017-12-01';
userBirthDate = userBirthDate.split("-").reverse().join("/");
console.log(userBirthDate);

0
投票

日期输入的值始终格式为yyyy-mm-dd,但显示的格式可能会因用户的区域设置而异。解析它并不难。

var myDate = $("#myinput").val().split("-").reverse().join("/")

How does that work?

我们从日期输入中获取值,并将其拆分为由短划线"-"分隔的部分。所以现在我们有一个像["2017", "12", "28"]这样的数组。然后,我们反转它,所以它按我们想要的顺序:["28", "12", "2017"]。然后,我们使用斜杠连接元素,给我们"28/12/2017"


0
投票

请试试这个。像这样的东西

$(function() {
    $( "#datepicker-13" ).datetimepicker({
        //format : 'DD-MM-YYYY HH:mm'
        viewMode: 'days',
        format: 'DD/MM/YYYY'
    }, "date");
    var dateNow = new Date();
    var date= moment(dateNow).format('DD/MM/YYYY');
    $('#datepicker-13').attr("value", date);

});

0
投票

$( function() {
	$( "#date" ).datepicker();
    //set the date format here
    $( "#date" ).datepicker("option" , "dateFormat", "dd/mm/yy");
	} );
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<input type="text" id="date">
© www.soinside.com 2019 - 2024. All rights reserved.