同じ JavaScript ファイルを参照する 2 つの html ファイル (Certificate1.html と Certificate2.html) があります。Certificate1.html は、html ファイルから情報を取得する 1 つの JavaScript 関数を呼び出し、新しいウィンドウを開き、次のように 2 番目のウィンドウに情報を割り当てます。
function passName() {
var FirstN = document.frmUserName.inFirstN.value;
var LastN = document.frmUserName.inLastN.value;
var CourseN = $('.sCourse').text();
var CourseHrs = $('.sNumHrs').text();
var CourseNum = $('.sNum').text();
var Cert = window.open("Certificate2.html");
Cert.FirstN = FirstN;
Cert.LastN = LastN;
Cert.CourseN = CourseN;
Cert.CourseHrs = CourseHrs;
Cert.CourseNum = CourseNum;
}
その後、Certificate2.html は別の関数を呼び出し、その情報を正しい場所に設定します。
function placeName() {
document.getElementById("sUserName").innerHTML = FirstN + " " + LastN;
document.getElementById("pCourseName").innerHTML = CourseN;
document.getElementById("sHrs").innerHTML = CourseHrs;
document.getElementById("sNum").innerHTML = CourseNum;
}
現在、これはすべて Firefox と IE9 で完全に機能しますが、Chrome では機能しません。Chrome で実行すると明らかなエラーは発生しませんが、F12 を確認すると、FirstN が未定義であるというエラーが表示されます。
Chrome は JavaScript 変数を他のブラウザーとは異なる方法で処理しますか? どうしたの?
ありがとう、クリスティン