JSFiddle - React, Tailwind, and code Playground
HTML
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.3.0/css/datepicker3.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.3.0/js/bootstrap-datepicker.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.1.1/css/bootstrap.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.1.1/js/bootstrap.min.js"></script>
<br>Mode :
<select id="mode">
<option value="1">Day</option>
<option value="2">Month</option>
<option value="3">Year</option>
</select>
<br /><br />
<div id="datepicker-container"> </div>
JavaScript
function initDatepicker(mode){
$('#datepicker-container').html(''+
'<div class="input-daterange" id="datepicker">from:'+
'<input type="text" name="start" />to:'+
'<input type="text" name="end" />'+
'</div>');
var $dtpicker=$('#datepicker-container > .input-daterange');
$dtpicker.find(':input').val('');
if (mode == 1) {//Day
$dtpicker.datepicker({
autoclose: true,
startDate: '+1d',
endDate: '+1y',
clearBtn: true,
todayHighlight: true,
});
} else if (mode == 2) {//Month
$dtpicker.datepicker({
autoclose: true,
startDate: '0m',
endDate: '+1y',
clearBtn: true,
startView: 1,
minViewMode: 1
});
} else if (mode == 3) {// Year
$dtpicker.datepicker({
autoclose: true,
startDate: "0y",
endDate: "+1y",
clearBtn: true,
startView: 2,
minViewMode: 2
});
}
}
$("#mode").change(function () {
$('#datepicker-container > .input-daterange').datepicker('remove');
initDatepicker($(this).val());
});
initDatepicker(1);// for first time initiate Day