Location.search - クエリを取得、変更する

投稿日: / 更新日:

JavaScriptの、Locationオブジェクトのsearchは、クエリ部分を取得、変更するプロパティです。

説明

Locationオブジェクトのsearchプロパティは、クエリの情報を含みます。取得できるのは、?syncer=1&good=trueの部分で、疑問符(?)も含みます。

https://syncer.jp/index.html?syncer=1&good=true#section-1

searchプロパティに新しく値を設定することで現在のクエリを変更、すなわち、ページ移動させることができます。指定する値には疑問符(?)は含めません。

// クエリを変更
window.location.search = "arayutw=2&bad=false" ;
https://syncer.jp/index.html?arayutw=2&bad=false#section-1

クエリ部分を変更してページ移動した場合、クエリ部分だけが変更されて、フラグメント識別子はそのまま引き継がれます。

サンプルコード

https://syncer.jp/index.html?syncer=1&good=true#section-1
// クエリ部分を取得 ( → "syncer=1&good=true" )
var search = window.location.search ;
// クエリ部分を変更 ( → https://syncer.jp/index.html?arayutw=2&bad=false#section-1 )
window.location.search = "arayutw=2&bad=false" ;

デモ

下記はsyncer-editor.com上のページです。window.location.searchを取得して表示します。このページはクエリでページを切り替えているため、変更した場合は他のデモページに移動します。フラグメント識別子がそのまま引き継がれるのを確認したい場合は、お手数ですが、新しいウィンドウを開いてお試し下さい。

構文

string search = Location.search
Location.protocol = string newSearch

返り値

項目説明
search現在のURLのクエリ部分。先頭の疑問符(?)が含まれる。

指定する値

項目説明
newSearch新しく設定したいクエリ部分。先頭の疑問符(?)を含めない。

関連項目

外部リンク