modaldialog( showModalDialog()
) を使用する Web アプリケーションを開発しています。ユーザーはいくつかのテキストフィールドに入力する必要があり、ユーザーが間違いを犯した場合は通常の Web フォームとして、ダイアログをリロードする必要があります。を使用してこれを思いつくことができましたlocation.reload(true);
しかし、これは IE では機能しません。何か不足していますか、それとも制限はありますか? 私を案内してください。
ありがとう
modaldialog( showModalDialog()
) を使用する Web アプリケーションを開発しています。ユーザーはいくつかのテキストフィールドに入力する必要があり、ユーザーが間違いを犯した場合は通常の Web フォームとして、ダイアログをリロードする必要があります。を使用してこれを思いつくことができましたlocation.reload(true);
しかし、これは IE では機能しません。何か不足していますか、それとも制限はありますか? 私を案内してください。
ありがとう
次のような手間をかけるのは、location.hrefへの割り当てが機能しないためです。モーダルの親からページをロードする別のウィンドウのみが開きます。
まず、ヘッドセクションにベースタグを作成する必要があります。
<head>
<base target="_self" />
</head>
次に、ユーザーがリンクをクリックするのをシミュレートします。このリンクは、リロードプロセスをアクティブ化するためのスクリプトのユーティリティにすぎないため、非表示にすることをお勧めします。このリンクをリロードと呼びましょう。</p>
<a id="reload">reload</a>
モーダルダイアログをリロードするスクリプトは次のとおりです。
// Get the link object to simulate user click
var reload = document.getElementById('reload');
// Assign the modal url to the link then click!
reload.href = window.location.href;
reload.click();
これで、IEのモーダルダイアログを更新できるようになります。