Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从另一个页面获取getElementById_Javascript_Html_Getelementbyid_Fitnesse - Fatal编程技术网

Javascript 从另一个页面获取getElementById

Javascript 从另一个页面获取getElementById,javascript,html,getelementbyid,fitnesse,Javascript,Html,Getelementbyid,Fitnesse,我试图从一个网页URL到另一个网页获取一个div,并使用getElementById以纯文本显示,而不使用AJAX或jQuery,因为我将在FitNesse中实现它。有没有办法传递URL 第1页 <div id="dataDiv">1234</div> <a id="getData" href="">Page2</a> <script> var data = document.getElementById('dataDiv').inn

我试图从一个网页URL到另一个网页获取一个
div
,并使用
getElementById
以纯文本显示,而不使用AJAX或jQuery,因为我将在FitNesse中实现它。有没有办法传递URL

第1页

<div id="dataDiv">1234</div>
<a id="getData" href="">Page2</a>

<script>
var data = document.getElementById('dataDiv').innerHTML;
//This will get the content from the div above with the id of "dataDiv"

document.getElementById("getData").setAttribute("href","page2.html?var="+data);
//This will set the url of the anchor with the id of "getData" with your url and the passing data.
</script>

这会将第一页到第二页的div中的内容发送到第二页。第1页上的结果url将是page2.html?var=1234

您可以在隐藏的iframe中加载url

然后使用iframe.contentWindow.document.getElementById($id),如下所述:

大致如下:

<iframe src="urlWithinYourDomain.html" style="display:none"></iframe>

恐怕我现在不能测试这个,所以可能有语法错误,但我认为它传达了这个想法。这是一种有点脏的方法,但考虑到您的限制,这是我能看到的最好的方法来满足您的要求。

如果另一个页面在您的域中,您可以使用AJAX来实现。否则,JSONP或只是一行PHP可能会有所帮助。如果不发出任何外部请求(如ajaxIs)来访问同一域中的页面,情况会怎样?否则,您可能会遇到一些严重的CORS错误()是的,它在同一个域上。我们可以获取一些代码,以便帮助您改进它。如果您只传递几个数字,这是一种非常简单的方法。Adam,脚本所做的是:在一个链接中设置整个元素的HTML,按下该链接后,您将导航到其他页面,并且仅在该页面上,您将读取[“var”]字符串查询。这与从外部页面抓取内容(从元素ID)无关。他不是在尝试获取第一页上div的内容并将其传递到第二页吗?我刚刚测试了我的代码,它就是这样做的。除非我误解了这个问题。
<iframe src="urlWithinYourDomain.html" style="display:none"></iframe>
var divElement = document.getElementById('iframeId').contentWindow.document.getElementById('elementIdOnSourcePage');
document.getElementById('targetParentId').appendChild(divElement);