0

ここに私のシナリオがあります: 親 Web ページがあり、JavaScript コードで新しいウィンドウを開きます。この新しいウィンドウは、サーバー側の aspx ページです。この子ページはデータベースにデータを保存する必要があり、保存後に ID を返します。ここで、この ID を子サーバー ページから親の JavaScript に渡す必要があります。

基本的に、トリガーする子サーバー コードが必要です。1) 親ページの JavaScript コードに値を返す 2) それ自体を閉じる

それを行うための許容される方法は何ですか?

4

2 に答える 2

1

親ページで変数を設定します。

var dbID;

開いているウィンドウから DB 呼び出しが返されたら、これを開いているウィンドウの load イベント (jquery または別のフレームワークを使用している場合は ready イベント) に配置します。

window.opener.dbID = <%= newID %> 
// or whatever your framework's technique is for this :-)
window.close();

同じ手法を使用して、親でグローバル関数を呼び出すこともできます。

「親」ページ:

function handleNewDBID(dbID) { alert("lookit me, i got an ID! " + dbID); }

そして開いたウィンドウで:

window.opener.handleNewDBID(<%=newID%>);
于 2009-11-12T23:19:54.223 に答える
0

子ウィンドウにいて、親ウィンドウにchildResultオブジェクトがあると仮定した場合:

window.opener.childResult = "yourIdHere";
于 2009-11-12T23:19:18.660 に答える