1

I have a Kendo UI template that generates dynamic HTML similar to a data repeater.

  • Because the Kendo template engine supports JavaScript I am using a "for, each" loop within the template itself.
  • The output looks fine in Chrome, Firefox, IE9 and above but it is broken in IE8.
  • You can view the snippet reproducing the issue here: http://jsbin.com/ajazuw/6.
  • I cannot see any JavaScript error when the content is rendered in IE 8 so I am assuming this might be caused by an IE8 specific issue in Kendo UI.

UPDATE:
The issue was caused by an extra quote in my template. See here:http://jsbin.com/ajazuw/11 for an updated working version of my template.

Alex Pop
  • 655
  • 1
  • 11
  • 20

1 Answers1

4

This issue is due to the trailing commas - IE chokes on them (see this topic for more details - Are trailing commas in arrays and objects part of the spec?).

Try this - http://jsbin.com/iyiqib/1/edit

Community
  • 1
  • 1
Petyo Ivanov
  • 1,137
  • 8
  • 18
  • Thanks for looking into this. The problem still persists in IE8 if I remove the trailing commas(I updated my original jsbin link to a version that does not have any trailing commas) – Alex Pop May 29 '13 at 14:53
  • I tested it in IE 10 with IE 8 mode, and it worked for me. I am not sure what goes wrong in the genuine one - you can test if $("#template").html() returns the correct value. – Petyo Ivanov May 30 '13 at 15:50
  • 1
    Upon closer look, it seems like the template features some extra quotes. Check them too. – Petyo Ivanov May 30 '13 at 15:52
  • omg, looking for hours cause template does not render. Result was an "" to much in my template! grr – chris Nov 12 '13 at 15:50