Элемент в html обновляется, но возвращает значение только после заявления «предупреждение». - PullRequest
1 голос
/ 19 июня 2020

Я вызываю дочернее окно из родительского окна. Дочернее окно обновляет текстовое поле в родительском окне. Я вижу, что текстовое поле обновляется визуально. Но когда я пытаюсь получить значение текстового поля в строке, оно возвращает только предыдущее значение. Он возвращает текущую строку, только если я помещаю предупреждение до получения значения. Это проблема обновления? Пожалуйста, руководство.

Код родительского окна

  window.selectedVal = "";
 window.open("http://www.build-exam.com/mathform.html","Math",'width=900,height=500,scrollbars=yes');
 document.getElementById("btn_save").click();

Код дочернего окна

btn_ret.onclick = function() 
{
 window.opener.document.getElementById("testbox2").value = s_ques;
 window.close();
}

Родительское окно btn click code

btn_save.onclick = function() 
{ 
var ss_ques;

//alert("came here");
ss_ques = document.getElementById("testbox2").value;
}

Переменная ss_ques получает текущее значение только в том случае, если предупреждение ("пришло сюда") раскомментировано

Также обратите внимание, что есть код для рендеринга MathJax дальше. Это из-за MathJax?

1 Ответ

2 голосов
/ 19 июня 2020

Код клика для родительского окна

btn_save.onclick = function() 
{ 
var ss_ques;

//alert("came here");
ss_ques = document.getElementById("testbox2").value;

localStorage.setItem("ss_ques", ss_ques);
}

Код дочернего окна

btn_ret.onclick = function() 
{
 window.opener.document.getElementById("testbox2").value = localStorage.getItem("ss_ques");
 window.close();
}
...