2015-01-13 184 views
2

我想從一個網頁URL獲取一個div到另一個網頁,並使用getElementById以純文本顯示,而不使用AJAX或jQuery,因爲我要在FitNesse中實現它。有沒有辦法通過網址?getElementById從另一個頁面

+1

如果該域名中包含其他頁面,則可以使用AJAX來完成。否則,JSONP或簡單的一行PHP可能會有所幫助。 –

+0

不是沒有提出任何外部請求,如ajax – Ding

+1

頁面是否在同一個域?否則,你可能會遇到一些令人討厭的CORS錯誤(http://www.w3.org/TR/cors/) – Dencker

回答

-1

第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

+0

如果您仔細閱讀:'getelementbyid from other page' –

+0

已編輯。如果你只傳遞幾個數字,這是一個非常簡單的方法。 –

+0

Adam,你的腳本所做的是:在鏈接中設置整個元素的HTML,在你按下之後,你將導航到其他頁面,並且只在另一個頁面上閱讀[「var」] String Query。 **這與從外部頁面**中刪除內容(來自元素ID)無關。 –

2

您可以將URL加載到隱藏的iframe中。

然後使用iframe.contentWindow.document.getElementById($ ID)所列出的位置:

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

其次是功能類似:

var divElement = document.getElementById('iframeId').contentWindow.document.getElementById('elementIdOnSourcePage'); 
document.getElementById('targetParentId').appendChild(divElement); 
How to pick element inside iframe using document.getElementById

沿東西線

恐怕我現在不能測試這個,所以可能會出現語法錯誤,但我認爲它表達了這個想法。這是一種骯髒的方法,但考慮到你的限制,這是我能看到做你要求的最好方式。

相關問題