Как передать значение из родительского окна на другую HTML-страницу с помощью JavaScript?
у меня 2 окна home.html
и result.html
.
на home.html
У меня есть <textarea>
#txtinput и <button>
#btn.
на result.html
у меня есть другой <textarea>
#txtresult.
On home.html
, если я введу значение в #txtinput и нажмите кнопку #btn, я хочу открыть result.html
и передать стоимостью of #txtinput в #txtresult.
я пробовал приведенный ниже код из другого сообщения, который отображает значение в теле нового окна, но не будет отображать его в моем элементе
var myWindow = window.open();
myWindow.document.body.innerHTML = document.getElementById("txtinput").value;
это как-то можно по-простому? Я относительно новичок в JavaScript, мои курсы продолжаются, и мне просто интересно узнать, как это сделать. Любая подробная помощь будет очень признательна!
4 ответов
Я надеюсь, что мне нужно разработать следующий код
кнопка на функции щелчка на домашней странице:
function sample(){
//this will set the text box id to var id;
var id = document.getElementById("text_box_id").id;
//the sessionStorage.setItem(); is the predefined function in javascript
//which will support for every browser that will store the sessions.
sessionStorage.setItem("sent", id);
//this is to open a window in new tab
window.open("result.html","_blank");
}
получить значение на странице результатов:
$(document).ready(function(){
//This sessionStorage.getItem(); is also a predefined function in javascript
//will retrieve session and get the value;
var a = sessionStorage.getItem("sent");
alert(a);
});
для получения дополнительной информации о sessionStorage
Я сделал то же самое, что и выше, я получаю значения в новое окно это здорово, но это значения, которые я получаю только в documet.готовые (функция). Поэтому я не могу использовать эти значения в своем JSP. как только я получил значения, мне нужно отобразить их в JSP.
надеюсь, этот код поможет вам
Это должно быть на главной странице:
function sample(id) {
sessionStorage.setItem("sent", id);
window.open("result.html","_blank");
}
это другой способ в той же функции домашней страницы:
function sample() {
var id=document.getElementById("your_required_id").id;
sessionStorage.setItem("sent", id);
window.open("result.html","_blank");
}
Это должно быть на странице результатов:
function sample1() {
var a=sessionStorage.getItem("sent");
alert(a);
}
идентификатор может быть вашим идентификатором текстового поля
на result.html
найти окно который открыл его, используя window.opener
и тогда взять данные из интереса, что окно.
window.addEventListener('load', function () { // wait for ready
var home = window.opener, txtinput, txtresult;
if (home) {
txtinput = home.document.getElementById("txtinput");
txtresult = document.getElementById('txtresult');
txtresult.value = txtinput.value;
}
}, false);
на home.html
, слушайте щелчок на #btn и открытым result.html
// assuming button exists at invocation time
var btn = document.getElementById('btn');
btn.addEventListener('click', function () {
window.open('result.html');
}, false);
Я думаю, что простое задание, используя окно.ручка открывателя изнутри детского окна, это то, что вам нужно:
if (window.opener) document.getElementById("#txtresult").value = window.opener.document.getElementById("#txtinput").value;