我正在尝试从一个网页URL到另一个网页获取一个div
,并使用getElementById
以纯文本显示,而不使用AJAX或jQuery,因为我将在FitNesse中实现它。有没有办法传递URL?
您可以将网址加载到隐藏的iframe中。
然后使用此处概述的iframe.contentWindow.document.getElementById($ id):How to pick element inside iframe using document.getElementById
类似的东西:
<iframe src="urlWithinYourDomain.html" style="display:none"></iframe>
接着是类似的功能:
var divElement = document.getElementById('iframeId').contentWindow.document.getElementById('elementIdOnSourcePage');
document.getElementById('targetParentId').appendChild(divElement);
恐怕目前无法测试,因此可能存在语法错误,但我认为它传达了这个想法。这是一种肮脏的方法,但是鉴于您的限制,这是我看到的执行您所要求的最佳方法。
在第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>
以及第2页
function getUrlVars() {
var vars = {};
var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
vars[key] = value;
});
return vars;
}
var var1 = getUrlVars()["var"];
这将在第一页到第二页中发送div中的内容。第1页上的结果网址将为page2.html?var = 1234
您应该忘掉它,继续从事自己的工作,赚一些钱,以便可以购买很多番茄酱。番茄酱很好。