[解決済み] リフレッシュせずにURLにパラメータを追加する
質問
この質問は何度もされていることだと思いますが、回答は私の問題を解決するのに十分な説明ではありませんでした。私はページのURL全体を変更したくありません。私はパラメータを追加したい
&item=brand
を追加したいのですが、ボタンをクリックすると更新されません。
使用方法
document.location.search += '&item=brand';
を使うと、ページが更新されます。
を使って
window.location.hash = "&item=brand";
はリフレッシュせずにハッシュで追加します。
#
を追加すると、パラメータの使用/効果がなくなります。私は、追加した後にハッシュを削除しようとしましたが、うまくいきませんでした。
この回答
や他の多くの人が、HTML5 History API の使用を提案しています。
history.pushState
メソッドを使用すること、そして古いブラウザの場合はページの再読み込みを防ぐためにフラグメント識別子を設定することです。しかし、どのように?
URLがあると仮定して。
http://example.com/search.php?lang=en
どのようにすれば
&item=brand
を追加するには、HTML5 の pushState メソッドまたはフラグメント識別子を使用して、次のような出力になります。
http://example.com/search.php?lang=en&item=brand
ページ更新なしで?
HTML5 の pushState を使用して、既存の/現在の URL にパラメータを追加する方法について、誰かが何らかの光を投げかけてくれることを願っています。あるいは、同じ目的のためにフラグメント識別子を設定する方法。良いチュートリアル、デモ、または少しの説明のあるコード片があれば最高です。
デモ をご覧ください。ご回答をよろしくお願いします。
どのように解決するのですか?
あなたは pushState または 置換状態 メソッド、すなわち
window.history.pushState("object or string", "Title", "new url");
または
window.history.replaceState(null, null, "?arg=123");
引数付きの例です。
var refresh = window.location.protocol + "//" + window.location.host + window.location.pathname + '?arg=1';
window.history.pushState({ path: refresh }, '', refresh);
関連
-
[解決済み] JavaScriptで現在のURLを取得する?
-
[解決済み] ページを再読み込みせずにURLを変更するにはどうすればよいですか?
-
[解決済み] 箇条書きのない順序なしリストが必要です。
-
[解決済み] JavaScriptでURLをエンコードする?
-
[解決済み] jQueryでページを更新するにはどうすればよいですか?
-
[解決済み] URLを新しいタブで開く(新しいウィンドウではない)
-
[解決済み] jQueryを使用しない$(document).ready相当
-
[解決済み] jQueryで現在のURLを取得する?
-
[解決済み] JavaScriptでwindow.location(URL)からハッシュを削除する方法 ページを更新せずに?
-
[解決済み】JavaScriptの関数にデフォルトのパラメータ値を設定する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] JavaScriptでURLにパラメータを追加する
-
[解決済み] jqueryでdivの要素がオーバーフローしていないかチェックする
-
[解決済み] 文字列がすべて同じ部分文字列で構成されているかどうかを調べるにはどうすればよいですか?
-
[解決済み] JSXとLoadshを使用して、ある要素をn回繰り返す方法
-
[解決済み] jQueryの$という記号の意味は何ですか?
-
[解決済み] コールバック地獄とは何か、RXはそれをどのように、そしてなぜ解決するのか?
-
[解決済み] Reactメモを使うべきではない場合とは?
-
[解決済み] AJAX Mailchimp サインアップフォームの統合
-
[解決済み] CORS: 認証モードは 'include' です。
-
[解決済み] リダイレクトされずにHTMLフォームを送信する方法