![](/img/trans.png)
[英]How to change the content of a div on one html page with the contents of a div from another page using javascript?
[英]Change the div's in another html page
還在這里學習一些javascript,做了其他事情,但現在是它的最后也是最重要的部分。
我有兩個html頁面-其中一個使用javascript動態添加文本字段(當然也要刪除它們)(genmain.html),另一頁面使用文本字段輸入(table.html)。
所以我已經創建了一個函數來檢索值數組。
function getElementArray(divName){
var names = document.getElementsByName("namefield");
}
變量名是一個數組,它具有字段中的所有值。
問題是我想將數組中的這些值設置為頁面上另一個div的值。 經過一番搜索,我知道可以用'id'-s來完成,但我不確定,也不完全知道如何做。
假設我在另一頁(table.html)上有很多div,但是其中一些具有id =“ MAIN”。 我想在div內更改值
例如
<div id="MAIN">THIS PART I WANT TO CHANGE</div>
Javascript不是我學校系統的一部分,我已經完成了CodeAcademy教程,這是我所獲得的最多的知識,我希望你們能為我的問題提供幫助。
變量名是一個數組,它具有字段中的所有值。
function getElementArray(divName){
var names = document.getElementsByName("namefield");
}
不,您僅在此處引用了元素。 您還沒有價值。
您可以通過遍歷名稱Nodelist數組並使用names[i].value
來獲取值。
問題是我想將數組中的這些值設置為頁面上另一個div的值
如果要在同一頁面中,則使用DOM的innerHTML
或textContent
屬性分配值。
document.getElementById("MAIN").textContent= names[1].value;
出於演示目的,我在此處使用names[1]
,這樣它將加載第二個輸入值。
假設我在另一頁(table.html)上有很多div,但是其中一些具有id =“ MAIN”。 我想在div內更改值
一旦您移至另一個頁面,則javascript狀態將丟失。 因此,您將無法訪問該頁面內的names
。
您必須將這些值存儲到localStorage中並在下一頁中進行檢索。
否則,將值添加到您的URL的query
字符串中,然后在其中進行檢索。
編輯:根據評論更新
讓我們假設您有var names = document.getElementsByName("namefield");
以便將值存儲在localStorage中。
var myValues = [],
names = document.getElementsByName("namefield");
for(var i = 0; i < names.length; i++) {
myValues.push(names[i].value);
}
localStorage.myValues = JSON.stringify(myValues);
現在,如果您的下一頁是Iinside window.onload
事件:
window.onload = function() {
var myValues = localStorage.getItem("myValues") ? JSON.parse(localStorage.getItem("myValues")) : [],
divElements = document.querySelectorAll("#MAIN");
for(var i =0; i < myValues.length; i++) {
divElements[i].textContent = myValues[i];
}
}
如果要設置或更改元素的內容,則可以使用innerHTML
屬性。
因此,在您的情況下, document.getElementById("MAIN").innerHTML = "Whatever you want";
作為記錄,您的示例中的names
從技術上講不是數組,而是NodeList
。 參見https://developer.mozilla.org/en/docs/Web/API/NodeList#Why_is_NodeList_not_an_Array.3F 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.