2016-12-23 160 views
0

在我清除Chrome浏览器Cookie后,我点击一个链接,它的href是一个JavaScript函数,我开始得到XMLHttpRequest错误。该链接将打开一个bootstrap modal,它们将动态创建为a dojo ajax component。当我点击链接时,出现XMLHttpRequest错误。XMLHttpRequest:只支持跨源请求

jquery-1.11.3.min.js:5 XMLHttpRequest cannot load javascript:sa(5). Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.

我导入道场在<header>

<script type="text/javascript" 
    src='<c:url value="/resources/js/dojo-release-1.10.0/dojo/dojo.js" />' 
    djConfig="parseOnLoad: true, usePlainJson: true, isDebug: false, async: false"></script> 

和JQuery在的<body>

<script type="text/javascript" 
     src='<c:url value="/resources/js/jquery-1.11.3.min.js" />'></script> 

底部的动态链接<a>

<a data-toggle="modal" data-target="#roomModal" href="javascript:sa(5)">Deluxe Double Room</a> 

JS函数在另一个文件中。

function sa(accommodationRoomId) { 
    var modalHeader = document.getElementById("modalHeader"); 
    modalHeader.innerHTML += accommodationRoomId; 
} 

在我清除chrome缓存和cookie后,此错误开始显示。我该怎么办才能解决这个错误?

PS:项目在Tomcat上运行。

回答

1

我改变了我的功能

function sa(_this) { 
    var modalBody = document.getElementById("modalBody"); 
    modalBody.innerHTML += "<span>"+_this.id+"</span>"; 
    console.log(_this); 
} 

,并添加onclick<a>

<a data-toggle="modal" id="5" data-target="#roomModal" onclick="sa(this)">Deluxe Double Room</a>