简体   繁体   中英

Converting date format

How to convert string 01 January 2016 to 01/01/2016 in jQuery. I am getting date from bootstrap datepicker fields by $('#datepicker').val() method. but need to convert date to dd/mm/yyyy format for further processing

See this

https://jsfiddle.net/wt7wxn8x/1/

var test =  new Date("01 January 2016");
console.log((test.getMonth() + 1) + '/' + test.getDate() + '/' +  test.getFullYear());

您可以使用诸如moment.js之类的库:

moment('01 January 2016').format('DD/MM/YYYY')

please add datepicker like this this in your html

<script type="text/javascript">
 $('#datepicker').datepicker({
   autoclose: true,
   format: 'dd/mm/yyyy'
 });
</script>

then get your datepicker value

$('#datepicker').val()

You can specify the format like so.

 $('.datepicker').datepicker({
    format: 'mm/dd/yyyy',
    startDate: '-3d'
});

You have two options,

Set the data-date-format attribute on the input element.

or

Use the format config to set your desired format.

 $('.datepicker').datepicker({ format: 'dd/mm/yyyy' }); $('#submit-btn').on('click', function(e) { $('#display-area').html($('#datepicker-1').val()); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.6.4/js/bootstrap-datepicker.min.js"></script> <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/> <link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.6.4/css/bootstrap-datepicker.min.css" rel="stylesheet"/> <form> <div class="form-group"> <label for="datepicker-1">Start Date</label> <input class="form-control datepicker" id="datepicker-1" data-date-format="dd/mm/yyyy" aria-describedby="datepickerHelp"> <small id="datepickerHelp" class="form-text text-muted">Select a date.</small> </div> <input type="button" id="submit-btn" class="btn btn-primary" value="Show Date" /> </form> <hr /> <strong>Date Value:</strong> <span id="display-area"></span> 

We can use Parse to convert string month to corresponding number. please try this one:

 let str = "1 January 2016", str2 = "1 mar 2016", str3 = "1 au 2016"; function cDate(str) { if(!(Date.parse(str))) {return 'error';} let dt = str.split(' '); let d = new Date(Date.parse(`${dt[1]} ${dt[0]}, ${dt[2]}`)); let result = `${d.getDate()}/${d.getMonth()+1}/${d.getFullYear()}`; return result; } console.log(str, '==', cDate(str)); console.log(str2, '==', cDate(str2)); console.log(str3, '==', cDate(str3)); 

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM