当我加载外部网站的内容时,Javascript没有加载
Javascript is not loading when I load the content of external website
我有一个页面,我正在通过Jquery Post方法将外部站点内容加载到我的PHP文件中(由于跨站点问题),如下所示。返回.php)
$url = $_POST['url'];
echo file_get_contents($url);
我的 HTML 代码看起来像这样
$.post ("back.php",
{
url : "http://www.ralphlauren.com/product/index.jsp?productId=2130294&cp=1760781.1760809&ab=ln_men_cs1_polos&parentPage=family"
}
,
function (data)
{
document.getElementById ("output").innerHTML = data;
}
);
网站内容加载正常,但脚本未加载,因此我在更改应执行脚本的任何选项时出现错误。
我尝试了不同的方法,但没有用。
我怎样才能实现加载脚本。
编辑看来我的问题不清楚。
问题是,给定URL的内容和脚本正在我的页面中加载。外部 URL 包含一些未执行的嵌入式脚本。
下面是外部站点的示例
<html>
<body>
Hello
<script>
alert("This is some message");
</script>
</body>
</html>
现在,如果我们直接在浏览器中运行此页面,它会显示文本"Hello"以及警报消息,但是当我通过上述方法(POST/Jquery)加载此文件时,它显示"Hello"但不显示警报消息(意味着,不执行javascript)。
请帮助我执行该脚本。
执行时应该使用 $(function() { })
加载 js!
将带有元素的 HTML 加载到页面中不是很稳定。这在跨浏览器上不起作用,因为某些浏览器不会在外部页面中运行 onload(使用 ajax 获取)。
所以不要这样做,在你$.post
的回调操作中运行你需要的 javascript。
编辑另请参阅此
不知道为什么你的不工作,但是,试试这个,似乎工作得很好:
<?php
if($_SERVER['REQUEST_METHOD']=='POST' && $_POST['url']){
header('Content-Type: text/html');
echo file_get_contents($_POST['url']);
die;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<head>
<title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" charset="utf-8"></script>
<script charset="utf-8" type="text/javascript">
$(function() {
$.post ("back.php",{
url : "http://www.ralphlauren.com/product/index.jsp?productId=2130294&cp=1760781.1760809&ab=ln_men_cs1_polos&parentPage=family"
},function (data){
document.getElementById ("output").innerHTML = data;
});
});
</script>
</head>
<body>
<div id="output"></div>
</body>
</html>
错误可能是由于以下原因造成的:
-
可能是你忘记加载jQuery库了。
-
你忘记了将代码包装在 DOM 就绪中,即。
$(function() { })
-
如果您尝试从不同的域检索数据,则应尝试使用
jsonp
类型请求。
相关文章:
- ADF:有条件地加载javascript资源
- .load()函数赢得't加载javascript
- Gmaps搜索和kmz加载javascript
- 页面显示前加载Javascript警报
- 依赖于缓慢加载javascript的UI
- 在外部JS执行后加载JavaScript
- 在WordPress站点中加载jquery.js后加载javascript代码
- 图像未加载javascript、html、angular、imdb-api
- 加载 JavaScript 取决于以前异步加载的 JavaScript
- 预加载Javascript音频以在脚本中播放
- 无法加载Javascript错误XMLHttpRequest
- AJAX JSF请求后重新加载Javascript
- Rails Assets Pipeline从控制器和方法加载JavaScript
- 使用Require.js按照依赖关系的顺序加载JavaScript
- 正在等待加载文件(加载JavaScript)
- 仅在需要时加载javascript函数
- 直接导航到chrome中的页面时未加载Javascript脚本
- 异步加载Javascript
- IE7 未加载 JavaScript 文件
- 从框架中的函数异步加载 Javascript