This article describes the API migration process of DatePicker component from Essential JS 1 to Essential JS 2.
Behavior
|
API in Essential JS 1
|
API in Essential JS 2
|
CSS Class
|
property: cssClass
var dateObj = new ej.DatePicker($("#datepicker"), {
cssClass: "gradient-lime"
});
|
property: cssClass
let datepickerObject: DatePicker = new DatePicker({
cssClass: 'e-custom-style'
});
datepickerObject.appendTo('#element');
|
Event callback for each cell creation
|
Not Applicable
|
Event: renderDayCell
let datepickerObject: DatePicker = new DatePicker({
renderDayCell: onRenderCell
});
datepickerObject.appendTo('#element');
function onRenderCell(args: RenderDayCellEventArgs): void {
}
|
Show/Hide the today button
|
property: showFooter
var dateObj = new ej.DatePicker($("#datepicker"), {
showFooter: false
});
|
property: showTodayButton
let datepickerObject: DatePicker = new DatePicker({
showTodayButton: false
});
datepickerObject.appendTo('#element');
|
Show/Hide the other month dates
|
property: showOtherMonths
var dateObj = new ej.DatePicker($("#datepicker"), {
showOtherMonths: false
});
|
Can be achieved by
let datepickerObject: DatePicker = new DatePicker();
datepickerObject.appendTo('#element');
.e-datepicker .e-calendar .e-content tr.e-month-hide,
.e-datepicker .e-calendar .e-content td.e-other-month > .e-day {
visibility: none;
}
.e-datepicker .e-calendar .e-content td.e-month-hide,
.e-datepicker .e-calendar .e-content td.e-other-month {
pointer-events: none;
touch-action: none;
}
|
Show/Hide the disabled range
|
property: showDisabledRange
var dateObj = new ej.DatePicker($("#datepicker"), {
showDisabledRange: false,
blackoutDates: [new Date(2016, 4, 10), new Date(2016, 4, 15), new Date(2016, 4, 20), new Date(2016, 4, 22), new Date(2016, 5, 12), new Date(2016, 5, 24)]
});
|
Not Applicable
|
Show/Hide the popup button
|
property: showPopupButton
var dateObj = new ej.DatePicker($("#datepicker"), {
showPopupButton: false
});
|
Can be achieved by
let datepickerObject: DatePicker = new DatePicker({
focus: onFocus
});
datepickerObject.appendTo('#element');
function onFocus(args: FocusEventArgs) {
datepickerObject.show();
}
.e-datepicker .e-control-wrapper .e-input-group-icon.e-date-icon{
display: none;
}
|
Enable /Disable the rounded corner
|
property: showRoundedCorner
var dateObj = new ej.DatePicker($("#datepicker"), {
showRoundedCorner: true
});
|
Can be achieved by
let datepickerObject: DatePicker = new DatePicker({
cssClass: 'e-custom-style'
});
datepickerObject.appendTo('#element');
.e-control-wrapper.e-custom-style.e-date-wrapper.e-input-group{
border-radius: 4px;
}
|
Skip a month
|
property: stepMonths
var dateObj = new ej.DatePicker($("#datepicker"), {
stepMonths: 2
});
|
Can be achieved by
let datepickerObject: DatePicker = new DatePicker({
value: new Date("09/04/2019"),
open:onOpen
});
datepickerObject.appendTo('#element');
function onOpen(args:any){
datepickerObject.navigateTo('Year', new Date("03/18/2018"));
}
|
Show/Hide the tooltip
|
property: showTooltip
var dateObj = new ej.DatePicker($("#datepicker"), {
showTooltip: false
});
|
Not Applicable
|
Button text
|
property: buttonText
var dateObj = new ej.DatePicker($("#datepicker"), {
buttonText : "Now"
});
|
Can be achieved by
L10n.load({ 'en': {'datepicker': {today:'Now' }}});
let datepickerObject: DatePicker = new DatePicker({
locale: 'en'
});
datepickerObject.appendTo('#element');
|
Display inline
|
property: displayInline
var dateObj = new ej.DatePicker($("#datepicker"), {
displayInline: true
});
|
Not Applicable
|
Enable/Disable the animation
|
property: enableAnimation
var dateObj = new ej.DatePicker($("#datepicker"), {
enableAnimation : false
});
|
Not Applicable
|
Highlight dates
|
property: highlightSection
var dateObj = new ej.DatePicker($("#datepicker"), {
highlightSection: "week"
});
|
Can be achieved by
let datepickerObject: DatePicker = new DatePicker({
renderDayCell: highlightDate
});
datepickerObject.appendTo('#element');
function highlightDate(args: RenderDayCellEventArgs): void {
if (args.date.getDate() === 10) {
args.element.classList.add('e-highlightweekend');
}
}
.e-highlightweekend {
background-color: #cfe9f3;
}
|
Highlight weekend
|
property: highlightWeekend
var dateObj = new ej.DatePicker($("#datepicker"), {
highlightWeekend : true
});
|
Can be achieved by
let datepickerObject: DatePicker = new DatePicker({
renderDayCell: highlightDate
});
datepickerObject.appendTo('#element');
function highlightDate(args: RenderDayCellEventArgs): void {
if (args.date.getDay() === 0 || args.date.getDay() === 6) {
args.element.classList.add('e-highlightweekend');
}
}
.e-highlightweekend {
background-color: #cfe9f3;
}
|
Tooltip format
|
property: tooltipFormat
var dateObj = new ej.DatePicker($("#datepicker"), {
tooltipFormat : "dd/MM/yyyy"
});
|
Not Applicable
|
Special dates
|
property: specialDates
specialDays = [ { date: new Date(2018, 09, 08), tooltip: "In Australia", iconClass: "flags sprite-Australia" },{ date: new Date(2018, 09, 21), tooltip: "In France", iconClass: "flags sprite-France" }]
var dateObj = new ej.DatePicker($("#datepicker"), {
specialDates : specialDays
});
|
Can be achieved by
let datepickerObject: DatePicker = new DatePicker({
renderDayCell: customDates,
value: new Date('5/5/2017')
});
datepickerObject.appendTo('#element');
function customDates(args: RenderDayCellEventArgs) {
if (args.date.getDate() === 10) {
let span: HTMLElement;
span = document.createElement('span');
span.setAttribute('class', 'e-icons highlight');
args.element.firstElementChild.setAttribute('title', 'Birthday !');
args.element.setAttribute('title', 'Birthday !');
args.element.setAttribute('data-val', 'Birthday !');
args.element.appendChild(span);
}
}
|
FocusIn event
|
Event: focusIn
var dateObj = new ej.DatePicker($("#datepicker"), {
focusIn: function (args) {}
});
|
Event: focus
let datepickerObject: DatePicker = new DatePicker({
focus: onFocus
});
datepickerObject.appendTo('#element');
function onFocus(args: FocusEventArgs): void {
}
|
FocusOut event
|
Event: focusOut
var dateObj = new ej.DatePicker($("#datepicker"), {
focusOut: function (args) {}
});
|
Event: blur
let datepickerObject: DatePicker = new DatePicker({
blur: onBlur
});
datepickerObject.appendTo('#element');
function onBlur(args: BlurEventArgs): void {
}
|
FocusIn method
|
Not Applicable
|
Method: focusIn()
let datepickerObject: DatePicker = new DatePicker({
placeholder: 'Enter date'
});
datepickerObject.appendTo('#element');
datepickerObject.focusIn();
|
FocusOut method
|
Not Applicable
|
Method: focusOut()
let datepickerObject: DatePicker = new DatePicker({
placeholder: 'Enter date'
});
datepickerObject.appendTo('#element');
datepickerObject.focusOut();
|
Prevent popup close
|
Not Applicable
|
Event: close
let datepickerObject: DatePicker = new DatePicker({
close: function (args: PreventableEventArgs) {
args.preventDefault();
}
});
datepickerObject.appendTo('#element');
datepickerObject.show();
|
Prevent popup open
|
Not Applicable
|
Event: close
let datepickerObject: DatePicker = new DatePicker({
open: function (args: PreventableEventArgs) {
args.preventDefault();
}
});
datepickerObject.appendTo('#element');
datepickerObject.show();
|
Behavior
|
API in Essential JS 1
|
API in Essential JS 2
|
Width
|
property: width
var dateObj = new ej.DatePicker($("#datepicker"), {
width: 200
});
|
property: width
let datepickerObject: DatePicker = new DatePicker({
width: '200px'
});
datepickerObject.appendTo('#element');
|
Readonly
|
property: readOnly
var dateObj = new ej.DatePicker($("#datepicker"), {
readOnly : true
});
|
property: readonly
let datepickerObject: DatePicker = new DatePicker({
readonly:true,
value:new Date()
});
datepickerObject.appendTo('#element');
|
Show/Hide the clear button
|
Not Applicable
|
property: showClearButton
let datepickerObject: DatePicker = new DatePicker({
showClearButton: false
});
datepickerObject.appendTo('#element');
|
Height
|
property: height
var dateObj = new ej.DatePicker($("#datepicker"), {
height: 35
});
|
Can be achieved by
let datepickerObject: DatePicker = new DatePicker({
cssClass: 'e-custom-style'
});
datepickerObject.appendTo('#element');
.e-control-wrapper.e-custom-style.e-date-wrapper.e-input-group {
height: 35px;
}
|
Html attributes
|
property: htmlAttributes
var dateObj = new ej.DatePicker($("#datepicker"), {
htmlAttributes : {required:"required"}
});
|
Not Applicable
|
Shoe/Hide the Week Number
|
property: weekNumber
var dateObj = new ej.DatePicker($("#datepicker"), {
weekNumber : true
});
|
property: weekNumber
let datepickerObject: DatePicker = new DatePicker({
weekNumber:true
});
datepickerObject.appendTo('#element');
|
Watermark text
|
property: watermarkText
var dateObj = new ej.DatePicker($("#datepicker"), {
watermarkText: "Enter date"
});
|
property: placeholder
let datepickerObject: DatePicker = new DatePicker({
placeholder: 'Enter date'
});
datepickerObject.appendTo('#element');
|
Disable/Enable
|
property: enabled
var dateObj = new ej.DatePicker($("#datepicker"), {
enabled: false
});
|
property: enabled
let datepickerObject: DatePicker = new DatePicker({
enabled:false
});
datepickerObject.appendTo('#element');
|
Disable the DatePicker
|
Method: disable()
var dateObj = new ej.DatePicker($("#datepicker"), {
});
dateObj.disable();
|
Not Applicable
|
Enable the DatePicker
|
Method: enable()
var dateObj = new ej.DatePicker($("#datepicker"), {
});
dateObj.enable();
|
Not Applicable
|
Enable/Disable the textbox editing
|
property: allowEdit
var dateObj = new ej.DatePicker($("#datepicker"), {
allowEdit : false
});
|
property: allowEdit
let datepickerObject: DatePicker = new DatePicker({
allowEdit : false
});
datepickerObject.appendTo('#element');
|
zIndex
|
Not Applicable
|
property: zIndex
let datepickerObject: DatePicker = new DatePicker({
zIndex: 100
});
datepickerObject.appendTo('#element');
|
Specify the placeholder text behavior
|
Not Applicable
|
property: floatLabelType
let datepickerObject: DatePicker = new DatePicker({
placeholder: 'Enter date',
floatLabelType: 'Auto'
});
datepickerObject.appendTo('#element');
|