Jquery IE<;=8.删除<;表格>;从AJAX接收时的标记

Jquery IE<;=8.删除<;表格>;从AJAX接收时的标记,jquery,ajax,internet-explorer,Jquery,Ajax,Internet Explorer,我正在做一个AJAX POST调用来获取一些HTML。我获取HTML并将其注入DOM。除了IE之外,所有浏览器都运行良好 。。。在别的地方 if ($.browser.msie && parseFloat($.browser.version) < 9) { ui.panel.innerHTML = $(".ieHackTextArea").val(); // jQuery injection doesn't work } if($.browser.msie&&p

我正在做一个AJAX POST调用来获取一些HTML。我获取HTML并将其注入DOM。除了IE之外,所有浏览器都运行良好 。。。在别的地方

if ($.browser.msie && parseFloat($.browser.version) < 9) {
    ui.panel.innerHTML = $(".ieHackTextArea").val(); // jQuery injection doesn't work
}
if($.browser.msie&&parseFloat($.browser.version)<9){
ui.panel.innerHTML=$(“.ieHackTextArea”).val();//jQuery注入不起作用
}

您可以尝试将所有表单包装到一个
中,看看是否效果更好


我在一个
对象上遇到了同样的问题,这是我确保它在IE8中正常工作的解决方案。

我今天遇到了完全相同的问题,并设法通过在
之前插入一个空的
来修复它,它以某种方式停止了
IE8
(没有在其他版本中测试过)通过删除

解决方案既快速又简单,只需从表单标记的action=”“属性(仅在URL中)中删除最后一个斜杠即可

<form action="http://mywebsite.com/something/">
</form>
例如:

错误(即)


正确



仅删除表单action=”“结尾的斜杠。

在javascript处理程序中使用navigator.userAgent来识别浏览器并应用suiatable逻辑。与“CSS黑客”相比,这是直截了当的。 你可以在这里参考

IE的用户代理最有可能携带字符串MSIE(Miscrosoft internextExplorer:D)

基本上:

if(navigator.userAgent.indexOf('MSIE 7.0')>-1){
/*此处是否适用于IE7*/
}else if(navigator.userAgent.indexOf('MSIE 8.0')>-1){
/*这里是否适合IE8*/
}否则{
/*其余的*/

}
限制对IE7浏览器的访问:p唯一适用于IE9的IE!IE 7也不起作用。整天都在为这个问题争吵,以前的一个案例是用div包装它起作用,但这次没有,在它起作用之前放一个空的pre,这一次非常感谢!我不敢相信这真的管用。我很震惊。IE9
if ($.browser.msie && parseFloat($.browser.version) < 9) {
    ui.panel.innerHTML = $(".ieHackTextArea").val(); // jQuery injection doesn't work
}
<form action="http://mywebsite.com/something/">
</form>
<form action="http://mywebsite.com/something">
</form>