我的目標是從HTML文檔中獲取文本,該文檔不會從我的.jsp
文件調用任何函數。從外部HTML文檔獲取文本
我環顧四周,我以爲我已經找到了我的問題的答案,但它似乎並沒有工作,其他答案包括使用jQuery(我不熟悉和不允許使用) 。
這是到目前爲止我的代碼:
function getText(divID) {
var w = window.open("test.html");
var body = w.document.body;
var div = document.getElementById(divID);
var textContent = body.textContent || body.innerText;
console.log(textContent);
//div.appendChild(document.createTextNode(textContent));
}
因此,大家可以看到,我試圖讓一個HTML文檔的主體,並將它出現在另一個。我在正確的軌道上嗎?
編輯:好吧,所以我似乎讓我的問題很混亂。我在稱爲html.html
的HTML文檔中調用該函數,但我想從test.html
獲取文本,然後將其顯示在html.html
中。它必須是這樣的,因爲我不能認爲我想要讀取的HTML文檔將頭文件中包含我的.jsp
文件。
此刻我收到以下錯誤。
Uncaught TypeError: Cannot read property 'body' of undefined
XMLHttpRequest對象比打開窗口要好。 – epascarello 2015-02-09 15:51:19
除了epascarello所說的,元素沒有['createTextNode'](https://developer.mozilla.org/en-US/docs/Web/API/document.createTextNode)方法,'document'有。你必須創建文本節點到'document',然後[追加](https://developer.mozilla.org/en-US/docs/Web/API/Node.appendChild)到'div' 。 – Teemu 2015-02-09 15:54:25
這目前不是我的問題,因爲您可以看到它已被註釋掉。問題在於控制檯產生:「Uncaught TypeError:無法讀取未定義的屬性'body'。 test.html和JSP在同一個目錄下,並且我有另一個調用函數onload的HTML文件。 – 2015-02-09 15:58:25