簡體   English   中英

單擊另一個頁面上的按鈕時如何在頁面上創建一個div

[英]How to create a div on a page when clicking a button on another page

當我單擊'index'頁面上的'submit'按鈕時,我需要在'cart'頁面的p tag中寫入新文本。 如何使用 JavaScript 做到這一點。 我已經試過了

HTML 頁面index

<button onclick="myFunction()"> click me </button>

HTML 頁面cart

<p id="id"> </p>

Js code

function myFunction() {
    document.getElementById('id').innerHtml = 'mytext';
}

但它不起作用。 我該如何解決這個問題? 謝謝

本參考文獻中的 index page 和 cart page 是不同的文檔。

因此,當您在索引頁面上調用 function 時,它無法在該文檔中找到具有上述 id 的元素。

function myFunction() {
    document.getElementById('id').innerHtml = 'mytext';
}

僅使用 Javascript 執行此技巧的唯一方法是使用 Cookies。 您可以在客戶端的瀏覽器中創建一個 Cookie 並將“mytext”保存為 object,然后在另一個頁面上檢索它。

請參閱此頁面https://www.w3schools.com/js/js_cookies.asp

如果您不使用帶有 React 或 Vue 等框架的 SPA 結構,這可能會很困難 - 但並非不可能。

你可以做些什么來規避這個問題,你可以在sessionStoragelocalStorage中保存一個變量,這取決於你是否希望它在不同的瀏覽器會話之間保留,然后在你的其他頁面中檢查這個變量是否存在以及它是否確實使所需的更改。

然后,當它應該變回來時,您再次從 localStorage 中刪除該變量。

這有點笨拙,最好的方法是做這個服務器端或擁有一個 SPA 並通過全局 state 共享變量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM