1

私は ASP、JS、HTML5 の初心者です。私は、ASP.net によって駆動され、[前へ] ボタンと [次へ] ボタンを備えた簡単な社内 Web サイトを作成しています。ユーザーが [次へ] ボタンを押すたびに、次のブックマークにスクロールする必要があります。ただし、毎回サーバーからページが更新されるように見えます。

更新せずに同じページへの JavaScript リンクを作成する最も簡単な方法は何ですか? 現在、「#1」のような ID を持つスパンがあり、使用しています

button onclick="JavaScript:window.location.hash = '#1'

私は多くのバリエーションを試しましたが、どれもうまくいかないようです。

注意: 同じページのブックマークに移動しようとしているだけです。サーバーにデータを送信する必要はなく、ページを変更する必要もありません。

(編集:混乱の原因となったため、コードで「置換」を「ハッシュ」に変更しました)。

4

4 に答える 4

3

を使用するのではなく、window.location.replace単にwindow.locationorwindow.location.hrefまたはに代入してみてくださいwindow.location.hash

残念ながら、他の回答者は質問を理解していないか、問題を理解していません。もちろん、ページをリロードしなくても、ID で識別されるページの場所にジャンプできます。これは、ブラウザーがどのように機能するかの基本です。これが window.location.reload 関数が存在する理由の 1 つなので、必要に応じてリロードできます。また、href を使用して ID に移動することに限定されません。もちろん、window.location でそれを行うことができます (window.location.replace ではできません)。

更新:あなたがやろうとしていることには何も問題はなく、ページをリロードする方法はありません。あなたのページには、この動作を引き起こしている何か他のものがあるに違いありませんが、それが何であるかは想像できません. 本当に単純なテスト ケースを試してから、そこから先に進んでください。

于 2013-02-12T01:53:04.043 に答える
1

私のボタンはフォーム内にあったことがわかりました。window.location.hash ='#1'を使用することに加えて、ボタンタイプをbuttonに設定する必要があります。ボタンタイプが明示的に設定されていない場合、デフォルトで送信が行われるため、ページが更新されます。それ以外の場合は、ボタンをフォームにしないでください。

<button type ='button' onclick = "JavaScript:window.location.hash ='#1'">更新せずにナビゲート
</ button>
于 2013-02-12T03:10:31.670 に答える
1

必要なのは、id属性を持ついくつかの要素と<a href>、ハッシュを持つそれらのアイテムにリンクする要素を持つことだけです:

<h3 id="section_1">Section One</h3>
<p>...</p>
<div>Prev | <a href="#section_2">Next</a></div>

<h3 id="section_2">Section Two</h3>
<p>...</p>
<div><a href="#section_1">Prev</a> | <a href="#section_3">Next</a></div>

<h3 id="section_3">Section Three</h3>
<p>...</p>
<div><a href="#section_2">Prev</a> | Next</div>

これらの行の何か...

于 2013-02-12T01:44:01.897 に答える
0

探している動作を提供できるJQuery Ajaxを見たいと思うかもしれません。つまり、ページを更新せずに、サーバーとの通信と応答の取得を含む何かを行います。

于 2013-02-12T01:40:06.947 に答える