转换日期格式

时间:2016-11-30 12:17:15

标签: javascript jquery

如何在jQuery中将字符串01 January 2016转换为01/01/2016。我通过$('#datepicker').val()方法从bootstrap datepicker字段获取日期。但需要将日期转换为dd/mm/yyyy格式以进行进一步处理

6 个答案:

答案 0 :(得分:2)

见这个

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

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

答案 1 :(得分:1)

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

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

答案 2 :(得分:1)

请在你的html

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

然后获取你的datepicker值

$('#datepicker').val()

答案 3 :(得分:1)

您可以指定格式如此。

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

答案 4 :(得分:0)

您有两种选择,

  

在输入元素上设置data-date-format属性。

  

使用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>

答案 5 :(得分:0)

我们可以使用Parse将字符串月转换为相应的数字。请尝试这个:

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));