We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
Unfortunately, activation email could not send to your email. Please try again.
Essential JS2

Syncfusion jQuery based widgets are no longer in active development. Switch to our pure JavaScript based next generation Essential JS 2 library.

Syncfusion Feedback

How to customize the Recurrence editor?

Platform: jQuery |
Control: ejSchedule

The following steps shows the way to customize the recurrence editor.


Step 1:  Create a scheduler default sample and bind the appointmentWindowOpen event as shown below,  

$(function () {
                width: "100%",
                height: "525px",
                currentDate: new Date(2014, 4, 5),
                appointmentSettings: {
                    dataSource: [],
                    id: "Id",
                    subject: "Subject",
                    startTime: "StartTime",
                    endTime: "EndTime",
                    description: "Description",
                    allDay: "AllDay",
                    recurrence: "Recurrence",
                    recurrenceRule: "RecurrenceRule"
                appointmentWindowOpen: "OnAppointmentWindowOpen"


Step 2: Define the appointmentWindowOpen event function OnAppointmentWindowOpen which contains the code to customize the recurrence editor. The following code example shows the logic.

function OnAppointmentWindowOpen() {
    this._appointmentAddWindow.find(".e-recurrenceeditor").ejRecurrenceEditor({ frequencies: ["daily", "weekly", "monthly"] }); // Repeat field is customized
    if (this._appointmentAddWindow.find(".e-recurrenceeditor").children().eq(0).hasClass("e-floatright")) {
        var element = this._appointmentAddWindow.find(".e-recurrenceeditor").children();
        element[0].parentNode.replaceChild(element[0], element[1]);
        element[0].parentNode.insertBefore(element[1], element[0]);
    var recurEdit = this._appointmentAddWindow.find(".e-recurrenceeditor").data("ejRecurrenceEditor");
        change: function (args) {
            this.element.find('.monthposition').ejRadioButton({ checked: true });
            this.element.find('.e-recuruntil').ejRadioButton({ checked: true });
            // Every field is customized
            if (this._rRuleFreq != "WEEKLY")
                recurEdit._recurrenceContent.find("#" + recurEdit._id + "_every").addClass("custom");
                recurEdit._recurrenceContent.find("#" + recurEdit._id + "_every").removeClass("custom"); 
    // Ends fields are customized


Sample: http://jsplayground.syncfusion.com/kvtttmen


Step 3: Run the above sample and the recurrence editor is customized as shown below.

Scheduler with customized recurrence editor

Figure 1: Scheduler with customized recurrence editor.

You must log in to leave a comment

Please sign in to access our KB

This page will automatically be redirected to the sign-in page in 10 seconds.

Up arrow icon

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon

Live Chat Icon For mobile