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

Week View timeScale enable=false not showing appointments

I'm trying to show the appointments in Week View by setting the timeScale enable = false, but only show with enable = true. 
See the code:

var data = 
"[{"my_name":"Mono Nomo Nono","StartTime":"2019-04-30T08:30:00","EndTime":"2019-04-30T08:35:00"},{"my_name":"Mono Nomo Nono Momo","StartTime":"2019-04-30T08:45:00","EndTime":"2019-04-30T08:50:00"}]";

var scheduleObj = new ej.schedule.Schedule({
                width: '100%',
                selectedDate: actual_date,
                timeScale: {
                    enable: false,
                    interval: 60,
                    slotCount: slotCount
                showHeaderBar: true,
                showTimeIndicator: true,
                eventSettings: {
                    dataSource: data,
                    fields: {
                        subject: { name: 'my_name' }
                views: viewsCollection,
                currentView: currentView,
                showQuickInfo: false,
                editorTemplate: '#EventEditorTemplate',
                allowKeyboardInteraction: false

5 Replies

KK Karthigeyan Krishnamurthi Syncfusion Team May 7, 2019 06:06 AM

Dear Customer, 
Greetings from Syncfusion. 
We checked the reported case and event is displaying without time scale. 
Kindly try the sample and if the issue persists, try to reproduce the error in a sample and revert else share your values which are assigned to all variables like slotCount/runnable sample (if possible) to serve you better. 

S_ S_Line May 7, 2019 07:05 AM

Thank you for your assistance.

My case, its that i have to get data from server each day, week, month change and append the schedule object to a div. So, when change the day or week, i'm going to server to get the data, destroy the schedule object, create a new one and append it again to a div.

In this scenario, with the timeScale = true, it works fine!

Is it the right way?

KK Karthigeyan Krishnamurthi Syncfusion Team May 8, 2019 12:20 AM

Dear Customer,  
No, destroying the Schedule on navigation action is wrong as it affects the performance. By default, JS2 Scheduler works on load on demand concept where the post is raised for every CRUD and navigation action with the current view start and end date as parameter. In the below CRUD sample, LoadData will be called for every CRUD and navigation action. 
public JsonResult LoadData(Params param)  // Here we get the Start and End Date and based on that we can filter the data and return to Scheduler 
            DateTime start = DateTime.Parse(param.StartDate); 
            DateTime end = DateTime.Parse(param.EndDate); 
            var data = db.ScheduleEventDatas.Where(app => (app.StartTime >= start && app.StartTime <= end) || (app.RecurrenceRule != null && app.RecurrenceRule != "")).ToList();  // Here filtering the events based on the start and end date value. 
            return Json(data, JsonRequestBehavior.AllowGet); 
        public class Params 
            public string StartDate { get; set; } 
            public string EndDate { get; set; } 

S_ S_Line May 8, 2019 06:05 AM

Thank you!

I get a solution. Because i'm adding the schedule to a dynamic div, when i put this dynamic div in a body with:

var $div = $("<div>", { id: "schedule" });

It works fine!

KK Karthigeyan Krishnamurthi Syncfusion Team May 8, 2019 10:38 PM

Dear Customer,  
We are happy to hear that your issue is resolved. 

Live Chat Icon For mobile
Up arrow icon