小编典典

使用Internet Explorer和jQuery的“权限被拒绝”

ajax

我尝试使用jQuery和$.postInternet Explorer
进行AJAX调用,但是我得到的只是一个错误,提示“权限被拒绝”。这个问题有点奇怪,因为它仅在我进入任何其他页面之后才访问页面时才会发生。

例如,我在地址行中键入URL,然后让IE加载页面。然后,我单击一个按钮,以便脚本应开始加载JSON数据。(提供数据的脚本位于同一服务器上,我使用相对URL访问它,因此在这里使用其他域不是问题。甚至尝试在同一主机部分使用绝对URL。)

但是,当我刷新页面然后再次尝试时,它可以工作!当我从另一个页面转到该页面时,也是一样。起初没有任何效果,但是当我单击“刷新”时,一切都很好。

IE给我错误消息“权限被拒绝”,而在其他所有浏览器中我都没有注意到这种行为。由于我已经尝试了很多事情,但仍然无法想象问题出在哪里,我想问问您您认为问题可能是什么?

编辑: 一个小例子:

test.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de"> 
    <head> 
        <script type="text/javascript" src="/ietest/jquery.js"></script> 
        <script type="text/javascript" src="/ietest/test.js"></script> 
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    </head> 
    <body> 
        <a href="#">Test</a>
    </body> 
</html>

ajax.html

It works!

test.js

$(document).ready(function(){
    $( 'a' ).click(function(){
        $.post( '/ietest/ajax.html', function( data ) {
            alert( data );
        });
    });
});

在这里尝试:http :
//t1318.greatnet.de/ietest/test.html


阅读 329

收藏
2020-07-26

共1个答案

小编典典

从jquerys论坛的帖子在这里,你必须有内容类型元在你的头标记的第一个项目。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de"> 
    <head> 
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <script type="text/javascript" src="/ietest/jquery.js"></script> 
        <script type="text/javascript" src="/ietest/test.js"></script>  
    </head> 
    <body> 
        <a href="#">Test</a>
    </body> 
</html>
2020-07-26