Pesky Bugs in AjaxControlToolkit

I’m not here to offer you hope. I’m simply posting my experience so if you run into the same thing, you’ll have some idea of what your options are.

I have an application – environment constrains have deemed that I use .NET 4.5 and make minimal use of 3rd party plugins as much as possible.
In this application I want my lovely users to be able to create articles; beautiful rich text articles with bolded, italicized, multicolored, multi-font sized text.

For this purpose, I decided to use an HTML Editor Extender.
It’s actually a nice Control – you can apply it to any textbox and that textbox instantly becomes a rich text editor with HTML text capabilities.

The drawback that I encountered, and the reason you are reading this, is because HTMLEditorExtender does not play nice with certain versions of Internet Explorer and ONLY in Internet Explorer.

You may not have realized it’s an error, except that when your page loads, it hangs. Sometimes it hangs with a blank dialog box sporting a ‘cancel’ button that doesn’t work.
You can try hiding the dialog with CSS, but then you notice that the page is still hanging. You’ve also noticed that the ribbon for your rich text box is rendering UNDER the textbox, and other page elements are out of place.

If you hit F12 to view the developer console, you may have noticed an “Unknown Run Time Error” in the Console Log.

There have been a few suggested workarounds:

  • Ensure the targeted text box has text or at least 3 empty spaces in it
  • Change the “http-equiv” tag to the following:<meta http-equiv=”X-UA-Compatible” content=”IE=10,chrome=1″ />

Neither of these workarounds worked for my application. When rending a blank textbox targeted by the HTMLEditorExtender, the page would load fine.
The issue occurred when I loaded a textbox targeted by the HTMLEditorExtender containing marked-up text in certain IE browsers.

If you have the option, you could instruct your users to use a different browser, or change compatibility/emulation settings in IE.
If you don’t have that option, or you realize your users are lazy and unlikely to change browsers just to view a website; then you should ditch the HTMLEditorExtender entirely and just use the HTML Editor Control.