複数のdivがあるページがあります。データベースからいくつかの情報を取得して、それらのdivのいくつかに表示したいのですが、ホームdivへのリンクをクリックしたときにも表示したいのです。
また、同じウィンドウで(新しいページやタブではなく)ページを更新または再度開く必要があります。最後に、ページをホームdivに配置する必要があります。
私は以下のコードを試しましたが、うまくいきませんでした:
<a href="#home" onclick="window.open('index.jsp#home')" >home</a>
<a href="#home" onclick="location.reload()">home</a>
<a href="#home" onclick="location.href='index.jsp'">home</a>
私はこれを使用し、それは働いた
<a href="#" class="home_btn" onclick="location.reload();location.href='index.jsp'">منوی اصلی</a>
あなたの変更:
onclick="window.open('index.jsp#home')" >home</a>
に
onclick="parent.location='index.jsp#home'">home</a>
リロードする必要はありません。
location.href
をハッシュ値を含む現在のURLに変更する際の問題は、ページがリロードされず、指定されたIDにジャンプすることです。
ホームdivにジャンプしたい場合は、location.href='index.jsp'
を使用してジャンプし、インデックスファイルを編集してロード時にlocation.href = '#home'
を設定します。
(特定のIDを提供するために)新しくロードされたページに情報を渡したい場合は、代わりにクエリ文字列を使用できます。ページをジャンプするにはlocation.href = 'index.jsp?loaddiv=foo
を使用します
次に、ページが読み込まれるとクエリ文字列を読み取り、値を使用して要求されたdivにジャンプします。 location.search = '#foo'
クエリ文字列から値を抽出する方法の詳細については、「 この質問 」を参照してください
このような?
<input id="but1" type="button" value="click"></div>
function loadIndex() {
window.location.href = "http://jsfiddle.net/Xotic750/u5nmt/";
}
document.getElementById("but1").addEventListener("click", loadIndex, false);
on jsfiddle
jsfiddleがフレーム内にあることを忘れないでください