Javascript Can';无法获取iframe内容
我知道有很多关于它的话题,但是没有一个是有效的。我只需要获取iframe内容(而不是源代码) 我有一个表单,它将一些参数发布到另一台服务器,并将其定向到iframe(位于同一页面上)。因此,我接收到存储在iframe中的服务器响应代码,无需页面刷新:Javascript Can';无法获取iframe内容,javascript,jquery,html,Javascript,Jquery,Html,我知道有很多关于它的话题,但是没有一个是有效的。我只需要获取iframe内容(而不是源代码) 我有一个表单,它将一些参数发布到另一台服务器,并将其定向到iframe(位于同一页面上)。因此,我接收到存储在iframe中的服务器响应代码,无需页面刷新: <form name='vin_form' id='file_upload_form' action='*****' method='post'> <input name='name1' value='value1'>
<form name='vin_form' id='file_upload_form' action='*****' method='post'>
<input name='name1' value='value1'>
<input name='name2' value='value2' type='hidden'>
<input name='name3' value='value3' type='hidden'>
<div onclick=\"document.getElementById('file_upload_form').target = 'upload_target'; document.vin_form.submit();\">Send form</div>
</form>";
<iframe id='upload_target' name='upload_target'></iframe>
我读过关于“同源策略”的文章,但我认为在我的情况下不应该禁止它,因为我可以通过url访问该页面并阅读所有代码,所以为什么我不能以编程的方式进行呢
还有其他方法可以从其他服务器获取表单响应代码吗?(由于某些站点框架防御,php curl无法工作)*更新-尝试以下方法:
var t = document.getElementById("upload_target");
var y =( t.contentWindow || t.contentDocument);
alert(y.document.body.innerHTML)
*更新-尝试以下操作:
var t = document.getElementById("upload_target");
var y =( t.contentWindow || t.contentDocument);
alert(y.document.body.innerHTML)
那么,这两页的来源是否相同?你说你认为。。。你应该检查确认一下。我同意Šime,如果你可以通过URL访问它,那么你就在那个网站上,很酷;如果您从iframe加载它,那么您就不是在同一个源上,除非您的站点和iframe的目标都在同一个域上。如果您能够澄清您实际希望实现的目标以及这样做的原因,这可能会有所帮助。您的浏览器javascript控制台中是否有任何错误?是的,错误:“访问属性“文档”的权限被拒绝”。这意味着它是真正被禁止的。。。我想做的是从另一个域的url页面获取html代码,但是这个url是受保护的,没有表单提交和发布一些值,我无法访问它。那怎么办呢\那么,这两页的来源是否相同?你说你认为。。。你应该检查确认一下。我同意Šime,如果你可以通过URL访问它,那么你就在那个网站上,很酷;如果您从iframe加载它,那么您就不是在同一个源上,除非您的站点和iframe的目标都在同一个域上。如果您能够澄清您实际希望实现的目标以及这样做的原因,这可能会有所帮助。您的浏览器javascript控制台中是否有任何错误?是的,错误:“访问属性“文档”的权限被拒绝”。这意味着它是真正被禁止的。。。我想做的是从另一个域的url页面获取html代码,但是这个url是受保护的,没有表单提交和发布一些值,我无法访问它。那怎么办呢\他实际上绑定到iframe的onload事件(jquery有两个
.load()
方法)。另外,ajax加载方法去掉了body
和head
以及那些东西——如果他一直在使用这些东西,我的意思是@nbrooks我知道它们是两个加载方法,我将删除答案的加载部分。不,它不起作用:(它处理错误:“拒绝访问属性‘document’的权限”他实际上绑定到了iframe的onload事件(jquery有两个.load()
方法)。此外,ajax加载方法去掉了body
和head
以及这些东西——如果他一直在使用它们,我的意思是。@nbrooks我知道它们是两个加载方法,我将删除答案的加载部分。不,它不起作用:(它处理错误:“访问属性“文档”的权限被拒绝”