Javascript 提交后未加载外部JS文件
我在domain1中有一个js文件,它在domain1中运行良好。但是,如果我将js从domain1连接到domain2,它将不起作用 js文件是与domain1中的PHP文件的连接,用于输出一些结果。我怎样才能使它在域2中工作 [我想让js从域1本身开始工作] 这里是domain1中的js文件Javascript 提交后未加载外部JS文件,javascript,php,Javascript,Php,我在domain1中有一个js文件,它在domain1中运行良好。但是,如果我将js从domain1连接到domain2,它将不起作用 js文件是与domain1中的PHP文件的连接,用于输出一些结果。我怎样才能使它在域2中工作 [我想让js从域1本身开始工作] 这里是domain1中的js文件 function sendQuery() { var container = $('#DisplayDiv'); $(container).html('<img src="http
function sendQuery() {
var container = $('#DisplayDiv');
$(container).html('<img src="http://www.domain1.com/loading.gif">');
var newhtml = '';
$.ajax({
type: 'POST',
url: 'http://www.www.domain1.com/data.php',
data: $('#SubmitForm').serialize(),
success: function (response) {
$('#DisplayDiv').html(response);
}
});
return false;
}
它一直工作到加载.gif文件,但从domain2的external output.php文件中没有输出数据
[此处域1和域2仅用作示例]
现在工作很好
多亏了@Ohgodwhy,域名1中的.htaccess中的标题集访问控制允许源代码*。。如果你在这里通过了你的代码,那就太棒了。。 但我认为,如果你想将任何“js”文件从任何域连接到你的域,你可以使用普通的减速: 在HTML中:
<script type = "text/javascript" src="https://googledrive.com/host/0B248VFEZkAAiNjhxaDNUZVpsVHM" charset="utf-8"></script>
在PHP中:
echo '<script type = "text/javascript" src="https://googledrive.com/host/0B248VFEZkAAiNjhxaDNUZVpsVHM" charset="utf-8"></script>';
非常重要的一点是:
1-必须注意从属脚本的脚本顺序。
2-您调用的元素必须在cal时间内参与并可见。Javascript不允许跨域AJAX调用。 有一些选项可以这样做,比如JSONP
有关更多选项,请参阅此链接:如何在domain2中使用js,显示您的代码。在chrome控制台中检查,并写出您遇到的错误。您是如何在域2中包含js的?域1和域2中的脚本都是相同的。但唯一的区别是,在domain2中,我将js文件更改为从domain1加载。如何在domain2中加载它?这是因为跨源资源共享。您需要启用访问控制或允许来源:http://domain2.com 或者,您需要使用JSONP。或者,将其发送到domain2.com上的脚本,并使用php获取脚本并将其返回到ajax函数。