web-dev-qa-db-ja.com

onclickイベントを使用して同じウィンドウとタブでリンクを開くにはどうすればよいですか?

複数の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>
10
MohammadZoghi

私はこれを使用し、それは働いた

<a href="#" class="home_btn" onclick="location.reload();location.href='index.jsp'">منوی اصلی</a> 
14
MohammadZoghi

あなたの変更:

onclick="window.open('index.jsp#home')" >home</a>

onclick="parent.location='index.jsp#home'">home</a>

リロードする必要はありません。

10
Rikudo Pain

location.hrefをハッシュ値を含む現在のURLに変更する際の問題は、ページがリロードされず、指定されたIDにジャンプすることです。

ホームdivにジャンプしたい場合は、location.href='index.jsp'を使用してジャンプし、インデックスファイルを編集してロード時にlocation.href = '#home'を設定します。

(特定のIDを提供するために)新しくロードされたページに情報を渡したい場合は、代わりにクエリ文字列を使用できます。ページをジャンプするにはlocation.href = 'index.jsp?loaddiv=fooを使用します

次に、ページが読み込まれるとクエリ文字列を読み取り、値を使用して要求されたdivにジャンプします。 location.search = '#foo'

クエリ文字列から値を抽出する方法の詳細については、「 この質問 」を参照してください

0
duckman

このような?

<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がフレーム内にあることを忘れないでください

0
Xotic750