Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php JQuery AJAX不会显示在Internet Explorer上_Php_Jquery_Ajax_Internet Explorer - Fatal编程技术网

Php JQuery AJAX不会显示在Internet Explorer上

Php JQuery AJAX不会显示在Internet Explorer上,php,jquery,ajax,internet-explorer,Php,Jquery,Ajax,Internet Explorer,我有一个选择和更新SQL表的表单 JS: 表格: 下面的代码在Firefox和Chrome上显示php的内容,但在IE8/9中不显示 我试过以下方法 设置缓存:false, async:false, 从“获取”更改为“发布”,但没有“发送” 我还需要做些什么才能在Internet Explorer 8-11中运行此功能 更新: 在HTML中添加了以下标记,现在至少可以显示数据,但无法对表单进行任何编辑 <meta http-equiv="X-UA-Compatible" content=

我有一个选择和更新SQL表的表单

JS:

表格:

下面的代码在Firefox和Chrome上显示php的内容,但在IE8/9中不显示

我试过以下方法

设置缓存:false, async:false, 从“获取”更改为“发布”,但没有“发送”

我还需要做些什么才能在Internet Explorer 8-11中运行此功能

更新:

在HTML中添加了以下标记,现在至少可以显示数据,但无法对表单进行任何编辑

 <meta http-equiv="X-UA-Compatible" content="IE=edge" />

出于某种原因,Internet Explorer有时会有自己的缓存。如果选中Internet Explorer控制台中的“网络”选项卡,您将看到一个针对ajax请求的未修改状态。我有时也会遇到这种情况,似乎请求被Internet Explorer阻止,永远无法到达服务器

您可以尝试通过向ajax函数添加带有随机数的get参数来解决此问题

$.ajax({  
        url:"select.php?breakcache=" + Math.random(),  
        method:"POST",  
        cache:"false",
        success:function(data){  
             $('#live_data').html(data);  
        }  
});

出于某种原因,Internet Explorer有时会有自己的缓存。如果选中Internet Explorer控制台中的“网络”选项卡,您将看到一个针对ajax请求的未修改状态。我有时也会遇到这种情况,似乎请求被Internet Explorer阻止,永远无法到达服务器

您可以尝试通过向ajax函数添加带有随机数的get参数来解决此问题

$.ajax({  
        url:"select.php?breakcache=" + Math.random(),  
        method:"POST",  
        cache:"false",
        success:function(data){  
             $('#live_data').html(data);  
        }  
});

尽管运行IE11并指定了X-UA-Compatible,您仍然应该检查IE使用的渲染模式。特别是,检查它是否使用怪癖模式,因为这肯定会扼杀Ajax和许多其他功能

我怀疑这可能是问题所在,因为您的HTML代码不包含DOCTYPE,而丢失的DOCTYPE会自动使IE跳入怪癖模式

通过将HTML5 doctype添加到标记正上方的HTML文件顶部来修复此问题:


这应该可以解决问题。

尽管运行了IE11并指定了X-UA-Compatible,但仍应检查IE使用的渲染模式。特别是,检查它是否使用怪癖模式,因为这肯定会扼杀Ajax和许多其他功能

我怀疑这可能是问题所在,因为您的HTML代码不包含DOCTYPE,而丢失的DOCTYPE会自动使IE跳入怪癖模式

通过将HTML5 doctype添加到标记正上方的HTML文件顶部来修复此问题:


这应该可以解决问题。

可能是IE检查中禁用了javascript,并且启用了correctjava脚本。请在成功{}块的第一行数据上尝试alertdata或console.logdata。我认为其中一个jQuery函数可能在什么版本的jQuery上失败了?jQuery 2.x放弃了对IE8的支持。您说需要在IE8中运行它,所以您肯定需要将jQuery降级到v1.x而不是v2。不过,这不会对IE11中的工作方式产生任何影响,因此这与您现在遇到的问题无关。可能在IE检查中禁用了javascript,并且启用了correctjava脚本。请在成功{}块的第一行数据上尝试alertdata或console.logdata。我认为其中一个jQuery函数可能在什么版本的jQuery上失败了?jQuery 2.x放弃了对IE8的支持。您说需要在IE8中运行它,所以您肯定需要将jQuery降级到v1.x而不是v2。但是,这不应该对IE11中的工作方式产生任何影响,因此这与您现在遇到的问题是分开的。添加了标记但仍然无法通过。添加了标记但仍然无法通过。
$.ajax({  
        url:"select.php?breakcache=" + Math.random(),  
        method:"POST",  
        cache:"false",
        success:function(data){  
             $('#live_data').html(data);  
        }  
});
<!DOCTYPE html>