这是我第一次尝试 JavaScript,所以如果事情有点混乱,我深表歉意。
我有两个 html 页面(Certificate1.html 和 Certificate2.html)。我正在尝试做的是提示用户在 Certificate1.html 上输入他/她的姓名,然后将该信息传递给 Certificate2.html。此时,用户的姓名将显示在他可以打印的证书中。
两个 html 页面都引用同一个 JavaScript 文件 (Certificate1.js)。第一个页面调用 passName():
function passName() {
FirstN = document.frmUserName.inFirstN.value;
LastN = document.frmUserName.inLastN.value;
// alert(FirstN); // good
// alert(LastN); // good
var Cert = window.open("Certificate2.html");
Cert.FirstN = FirstN;
Cert.LastN = LastN;
//alert(Cert.FirstN); //good
//alert(Cert.LastN); //good
}
这似乎工作正常。我被卡住的地方是 Certificate2.html 调用的函数 placeName() 。我让它在 onLoad 上触发,我知道它正在正确访问该功能(我只是在那里发出警报并且它出现了)。我不知道如何访问我在 passName() 中传递给 Cert 的 FirstN 和 LastN 变量。我试过 document.FirstN 但我得到“未定义”。如何访问我(认为我)通过的 FirstN 和 LastN 变量?
谢谢!-克里斯汀
更新:
知道了!!!
我不需要通过 window.opener 访问它——我已经将变量传递给了窗口,所以我可以直接访问它们。
function placeName() {
//alert(FirstN);
document.getElementById("pUserName").innerHTML = FirstN + " " + LastN;
}
多谢你们!!-克里斯汀