I have a JS/jQuery based date picker - calendar. The algorithm itself is simple - a Calendar class that generates calendar, several methods for year/month change, etc, nothing that special. Since i have several independent date fields in the page, i am creating several independent calendars, for example, var calendar1 = new Calendar(), var calendar2 = new Calendar() and so on. The generated calendar is then placed into a <div> tag, identified by id attribute. Each time when a year/month is changed, it calls a method that regenerates the calendar output using the new paramets and places it into the same <div> On browsers like Firefox and Chrome everything works just fine, however, on IE comes this problem - when i open calendar, it allows me to change parameters (year, month) just 2-4 times and then it does nothing. If i reload the page, it works again for just a few clicks. I still can open and close the window, but i cannot modify the date anymore. Why is that in IE it does not work properly? Does the IE browser somehow treats different element id's and/or javascript classes/objects?


Do you have anything in a try catch to see if there is an error and what that error is? Have you enabled script debugging?

Maybe, 'setAttribute' and 'getAttribute' method you are meaning. These methods won't work on older IE version. Maybe, I'm wrong.

The try catch block does not catch anything. IE error debugging console spams a bunch of errors when i open the calendar, however they're pointing to the HTML file, line 1, where actually the doctype tag is. And it's IE8, couldn't be too old. The interesting thing is that it works like 3 clicks and then stops working.

If you are using Visual Studio you can attach process to IExplorer and then step through the javascript code to see what is happening and see where and why it is erroring out. If you don't have Visual Studio you can try one of the Express versions (free), they work great.