Rulați (cel puțin partea „Utilizare” de mai jos) după ce ați încărcat jQuery și fie la sfârșitul paginii, fie într-o declarație pregătită pentru DOM. Rețineți că această corecție creează o clonă a selecției, care se va trimite cu datele formularului, dar valoarea numelui a fost modificată pentru a include „-clona” la sfârșitul acesteia, așa că trebuie să fiți conștienți de asta, mai ales dacă sunteți serializând toate intrările.
Mulțumesc lui Craig Hoover.
// Safely use $ (function($) ( $.fn._ie_select=function() ( return $(this).each(function() ( var a = $(this), p = a.parent(); p.css('position','relative'); var o = a.position(), h = a.outerHeight(), l = o.left, t = o.top; var c = a.clone(true); $.data(c,'element',a); c.css(( zIndex : 100, height : h, top : t, left : l, position : 'absolute', width : 'auto', opacity : 0 )).attr(( id : this.id + '-clone', name : this.name + '-clone' )).change(function() ( $.data(c,'element') .val($(this).val()) .trigger('change') )); a.before(c).click(function() ( c.trigger('click'); )); )); // END RETURN ); // END PLUGIN // Usage if ($.browser.msie) ( $('select')._ie_select(); ) ))(jQuery); // END SAFETY