【问题标题】:Getting result of child window to write to parent window获取子窗口的结果以写入父窗口
【发布时间】:2012-12-11 02:42:31
【问题描述】:

我是 Javascript 的初学者,我正在尝试将子窗口的结果写入父窗口。这是子窗口中的函数:

函数 checkAnswer(){

var num1=parseInt(document.getElementById('firstNumber').value);
var num2=parseInt(document.getElementById('secondNumber').value);
var correctAnswer = num1+num2;
var userAnswer=parseInt(document.getElementById('input').value);


if(userAnswer==correctAnswer){
window.opener.document.getElementById('input') = correctAnswer;
}

else{
alert('wrong');
}

}

我正在尝试让正确答案出现在父窗口中

我不确定我做错了什么,或者我是否遗漏了什么。就像我说的,我是 Javascript 的初学者,希望能得到帮助:)

【问题讨论】:

  • 你能把你的代码放在jsfiddle中吗?问题似乎不在 window.opener.document.getElementById('input').value assignment 中。
  • 该功能对我有用,如果我将 window.opener.document.getElementById('input').value 赋值更改为 alert('whatever') 并输入正确答案,它会显示窗户。当我输入错误的答案时,也适用于我。

标签: javascript window parent addition


【解决方案1】:

这行是问题

window.opener.document.getElementById('input') = correctAnswer;

应该是

window.opener.document.getElementById('input').value = correctAnswer;

【讨论】:

  • 还是不行。我在父窗口上写了

    。此外,父窗口已经打开。
  • 奇怪的是你有一个元素(不是输入)叫做输入。如果您想让它与 P 或 DIV 或 SPAN 一起使用,请使用 window.opener.document.getElementById('input').innerHTML = correctAnswer;
  • 谢谢!那行得通,我以前有过,但是我使用chrome进行测试。菜鸟错误xD再次感谢
【解决方案2】:

试试innerHTML:

function checkAnswer() {
    var num1=parseInt(document.getElementById('firstNumber').value);
    var num2=parseInt(document.getElementById('secondNumber').value);
    var correctAnswer = num1+num2;
    var userAnswer=parseInt(document.getElementById('input').value);

    if(userAnswer==correctAnswer){
        window.opener.document.getElementById('input').innerHTML = correctAnswer;
    }
    else{
       alert('wrong');
    }
}

【讨论】:

  • @user1893388 你能把你的两个页面的html发给你吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-11-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-14
相关资源
最近更新 更多