2016-11-30 139 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));