2016-06-17 1 views
0

Я пытаюсь перенести данные из одной HTML страницы на другую страницу, так что я написал эту программу:как передавать данные из одной HTML страницы на другой с помощью JavaScript

page1.ejs:

<a href="/events" onclick="send()"> 
    <span class="message"> 
    new alert 
    </span> 
</a> 

function send() { 
    $mesg = $('.message'); 
    var msg = $mesg.text(); 
    var msg1 = msg.replace(/\s/g, ''); 
    localStorage.setItem("message", msg1); 
} 

page2.ejs:

<script src="socket.io/socket.io.js"></script> 
<script> 
    document.getElementById("event").innerHTML = localStorage.getItem("message"); 
</script> 
<td id="event"></td> 

Но я не получаю данные, передаваемые со страниц? в чем моя ошибка?

+0

Локальное хранение на происхождение (за домен и протокол). Все страницы, с одного источника, могут хранить и получать доступ к тем же данным. убедитесь, что обе страницы имеют одно и то же происхождение – Kld

ответ

0

Проблема заключается в page2.ejs:

Проблема: HTMLElement <td id="event"></td> еще не доступен, когда <script> блок обрабатывается и выполняется, так document.getElementById("event") возвращает неопределенное.

Переместите блок <script> на нижний нижний нижний нижний нижний нижний нижний нижний нижний нижний нижний нижний угол.

0
page1.ejs: 

    On click of submit - 
     window.location.href="page2.ejs.html?text1="+$('#text1').val() 

    page2.ejs: 

    $(document).ready(function(){ 
    var value1 = document.URL.indexOf('?text1=');//value from pag1.ejs 

    }); 
0

вы должны определить функцию Send() внутри тега скрипта и Page 2 запуска Java-скрипт, когда страница готова

document.addEventListener("DOMContentLoaded", function() { 
document.getElementById("event").innerHTML = localStorage.getItem("message"); 
}); 
Смежные вопросы