1. 通常、パラメータなどの少量のデータを転送するには URL 値転送を使用し、いくつかのグローバル セッション レベル変数を転送するにはセッションを使用します。ただし、フォーム間でより複雑なデータを転送する場合は、セッションのライフサイクルが長すぎるため、適切ではない可能性があります。 URL を使用して値を転送する場合、漢字ではエンコード エラーが発生する可能性があり、転送できる最大データ量は比較的制限されます。
2. モーダル ダイアログ ボックスの DialogArguments 属性を使用して、ページ間のデータ転送を実現できます。
モーダル ダイアログ ボックスの DialogArguments プロパティは、次の方法で取得できます。
var 変数 = window.dialogArguments
このプロパティを使用して、モーダル ダイアログ ボックスの受信パラメーター (引数を指定する文字列、数値、オブジェクト、または配列値) を取得します。特にオブジェクトまたは配列パラメーターは、ページ間でデータを渡す場合に非常に役立ちます。例は次のとおりです。
受信ページ:
<HTML>
<頭>
<スクリプト>
関数AddNew(会議ID) {
var obj=新しいオブジェクト();
obj.name="キビンチャオ";
obj.tel="12345678"; var strUrl="../MeetingManage/NewMeeting.aspx?id="+meetingID; window.showModalDialog(strUrl,obj,"dialogHeight:700px;dialogWidth=900px;dialogTop=10px;dialogLeft: 50px;"); window.location="../MeetingManage/MeetingPublishedList.aspx"; }
</スクリプト>
</HEAD>
<本体>
<BUTTON onclick="AddNew();" >ウィンドウを起動</BUTTON>
</BODY>
</HTML>
ページを受信:
<HTML>
<頭>
<スクリプト>
var oMyObject = window.dialogArguments;
変数名= oMyObject.name;
var tel= oMyObject.tel;
</スクリプト>
<title>無題</title>
</head>
<BODY STYLE="font-family: arial; font-size: 14pt; color: 雪;
背景色: RosyBrown;">
名前:
<SPAN STYLE="color:00ff7f">
<スクリプト>
document.write(名前);
</スクリプト>
</SPAN>
<BR>
電話番号:
<SPAN STYLE="color:00ff7f">
<スクリプト>
document.write(tel);
</スクリプト>
</SPAN>
</BODY>
</HTML>