$.ajax evaluates scripts within the response when dataType is "HTML"... but not in ie6.
To get around this, I have made this: function eval_html(html) { tags = /\<script.*?\>(.*?)\<\/script\>/gi; if(html = html.match(tags)){ eval(html .join("") .replace(tags, "$1") ); } } Called like so: $.ajax({ type:'POST', dataType: "html", url:url, success: function(response){ if($.browser.msie && $.browser.version < 7) eval_html(response); }, })