Hi,
I have been trialing a few jQuery controls from infragistics and everything was going mostly well.
I have encountered an issue with igCombo, though, when viewed in IE8.
I am using version 2011.2 for my tests but I can see that this issue is also present in the current latest version 2012.1. You can see this issue if you browse to http://samples.infragistics.com/jquery/combo-box/combo-load-on-demand using IE8 or lower. At the bottom of this post is an image showing the error. It's on the line where a variable is being assigned the return of "c.dataView()". And "c" is null.
I also get this error in my tests where I'm not using load on demand, just using a combo with minimum changes to default values.
Please let me know, what I can do eliminate this problem.
Thank you very much for your time,
Kyryll
Hi, Kyryll
I was able to replicate and solve the problem the same way with the 11.2 release in IE8 too! When you use the MVC helper for igCombo (usually in the body section of a page) and attach an event handler (usually in the head section before the MVC helper), you need to use the live() or delegate() jQuery methods to attach events.
If you use the igCombo() initialization syntax this messes things up with the MVC helper and you get the JS exception in IE8 or older. In other browsers this works fine. Anyway, no matter which browser do you use it is better to attach events with the live() or delegate() methods, and not use the initialization syntax.
Please, reply if you need some further assistance.
Cheers, Lazar
Hi Lazar,
Thank you for the very quick response! I really appreciate it:)
I have been testing what you said and it indeed made a difference but did not yet solve the problem completely.
On one of my pages I have two combos. Now, after I attach the event handler to the first combo, I can't initialize the second combo (same error with c.dataView() occurs).
Also my default page has the same issue and it has no event handlers for combos at all. It's basically just a "catch all" for all elements of certain type and init. E.g. below :
$(":input[type='button']").button();
$(":input[type='text'], :input[type='password']").addClass("text ui-widget-content ui-corner-all").igTextEditor();
$(".popupcombo").addClass("text ui-widget-content ui-corner-all").igCombo();
$(".popupdate").addClass("text ui-widget-content ui-corner-all").igDatePicker();
In the block above, ".igCombo();" throws the "c.dataView" error.
I think the quickest way for me to show you what is happening is by giving you access to the published development test site that I am working on. However I would like to only give access to you, so I have to figure out a way to send you private message:) Would I be able to email you the details?
Thank you Lazar :)
Please, give me details if you are testing with 11.2 or 12.1. Also, I advise to start from the beginning with the fresh 12.1 release if that is acceptable for you.