2016-11-30 194 views
2

如何在jQuery中將字符串01 January 2016轉換爲01/01/2016。我通過$('#datepicker').val()方法從引導日期選擇器字段獲取日期。但需要轉換日期dd/mm/yyyy格式作進一步處理轉換日期格式

+3

僅供參考jQuery是不參與格式化日期。你需要普通的老JS。我已經向你重申了你的問題。請注意,如果您指定了使用的日期選擇器控件,它可能也有幫助,因爲它可能具有內置的日期格式邏輯。你說它是Bootstrap的一個,但有數百個。 –

+0

http://stackoverflow.com/questions/26549773/convert-date-format-in-jquery此鏈接將幫助你。 – SilentCoder

+0

我是ujsing引導日期選擇器 – ajazsiddiqui

回答

1

請添加日期選擇這樣這樣在你的html

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

然後讓你的日期選擇器值

$('#datepicker').val() 
+1

我想在日期字段中顯示爲dd/mmm/yyyy,但以dd/mm/yyyy爲其他目的獲取日期 – ajazsiddiqui

1

您可以指定像這樣的格式。

$('.datepicker').datepicker({ 
    format: 'mm/dd/yyyy', 
    startDate: '-3d' 
}); 
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>

0

我們可以使用解析字符串轉換一個月向相應的號碼。請試試這個:

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