javascript - 階層 - jquery url 取得




JavaScriptを使用して現在のURLを取得しますか? (14)

私が望むのは、ウェブサイトのURLを取得することだけです。 リンクから取得したURLではありません。 ページの読み込み時に、私はウェブサイトの完全な現在のURLを取得し、私が好きなようにそれを変数として設定する必要があります。


jstlでは、pageContext.request.contextPathを使用して現在のURLパスにアクセスできます。 Ajax呼び出しを行う場合は、次のURLを使用してください。

url = "${pageContext.request.contextPath}" + "/controller/path"

例:ページhttp://.com/posts/36577223場合、これはhttp://.com/controller/pathます。


IDを持つ特定のリンクを参照している場合は、このコードが役に立ちます。

$(".disapprove").click(function(){
                      var id = $(this).attr("id");

                      $.ajax({
                          url: "<?php echo base_url('index.php/sample/page/"+id+"')?>",
                          type: "post",
                          success:function()
                          {
                            alert("The Request has been Disapproved");
                            window.location.replace("http://localhost/sample/page/"+id+"");
                          }
                      });
                });

私はIDを送信し、 window.location.replaceを使用してページをリダイレクトするためにここでajaxを使用しています 。 前述のように属性id=""を追加するだけです。


URL情報アクセス

JavaScriptには、ブラウザのアドレスバーに表示される現在のURLを取得および変更するためのさまざまな方法が用意されています。 これらのメソッドはすべて、 WindowオブジェクトのプロパティであるLocationオブジェクトを使用します。 次のように現在のURLを持つ新しいLocationオブジェクトを作成できます。

var currentLocation = window.location;

基本的なURL構造

<protocol>//<hostname>:<port>/<pathname><search><hash>
  • protocol:インターネット上のリソースにアクセスするために使用されるプロトコル名を指定します。 (HTTP(SSLなし)またはHTTPS(SSLあり))

  • hostname:ホスト名は、リソースを所有するホストを指定します。 たとえば、 www..com 。 サーバーは、ホスト名を使用してサービスを提供します。

  • ポート:インターネットやその他のネットワークメッセージがサーバーに到着したときに転送される特定のプロセスを認識するために使用されるポート番号。

  • pathname:パスは、Webクライアントがアクセスしたいホスト内の特定のリソースに関する情報を提供します。 例えば、/ /index.htmlです。

  • クエリー:クエリー文字列は、パスコンポーネントに続き、リソースが何らかの目的(たとえば、検索のためのパラメータまたは処理されるデータとして)で利用できる情報の文字列を提供します。

  • hash: URLのアンカー部分。ハッシュ記号(#)が含まれます。

これらのLocationオブジェクトのプロパティを使用すると、次のURLコンポーネントすべてにアクセスして、それらを設定または返すことができます。

  • href - URL全体
  • protocol - URLのプロトコル
  • host - URLのホスト名とポート
  • hostname - URLのホスト名
  • port - サーバーがURLに使用するポート番号
  • pathname - URLのパス名
  • search - URLのクエリー部分
  • hash - URLのアンカー部分

私はあなたがあなたの答えを持って願って..


クイックリファレンスのための結果の追加

window.location;

 Location {href: "https://.com/questions/1034621/get-the-current-url-with-javascript",
 ancestorOrigins: DOMStringList,
 origin: "https://.com",
 replace: ƒ, assign: ƒ, …}

document.location

  Location {href: "https://.com/questions/1034621/get-the-current-url-with-javascript", 
ancestorOrigins: DOMStringList,
 origin: "https://.com",
 replace: ƒ, assign: ƒ
, …}

window.location.pathname

"/questions/1034621/get-the-current-url-with-javascript"

window.location.href

"https://.com/questions/1034621/get-the-current-url-with-javascript"

location.hostname

".com"

開発者ツールを開き、 コンソールで次のように入力してEnterキーを押します。

window.location

例:以下は、現在のページの結果のスクリーンショットです。

ここから必要なものを手に入れてください。 :)


つかいます:

window.location.href 

コメントに記載されているように、以下の行は動作しますが、Firefoxでは盗聴されています。

document.URL;

DOMString型のURLを参照してください。


使用: window.location.href

上記のとおり、 window.location 更新時にdocument.URL は更新されませんMDN参照してください。


同じ質問が24時間前に聞かれました 。 自分自身を引用する:

window.locationを使用して、現在のフレームに関連付けられたロケーションオブジェクトへの読み書きアクセスを行います 。 アドレスを読み込み専用文字列として取得したい場合は、 window.location.hrefと同じ値を含むdocument.URL使用できdocument.URL



現在のページURLを取得します。

window.location.href

現在のロケーションオブジェクトを取得する方法は、 window.locationです。

これを元のURLを文字列として返すだけのdocument.locationと比較してください。 たぶん混乱を避けるために、 document.locationdocument.locationに置き換えられました。

現代のブラウザはすべて、 document.locationwindow.locationマップしdocument.location

実際には、ブラウザ間の安全性のために、 window.locationではなくwindow.locationを使用する必要がありdocument.location


純粋なJavaScriptを使用すると、現在のページの完全なURLを取得するのは簡単です。 たとえば、次のコードをこのページで試してください:

window.location.href;
// use it in console of this page will return
// http://.com/questions/1034621/get-current-url-in-web-browser"

window.location.hrefプロパティは、現在のページのURLを返します。

document.getElementById("root").innerHTML = "The full URL of this page is:<br>" + window.location.href;
<!DOCTYPE html>
<html>

<body>
  <h2>JavaScript</h2>
  <h3>The window.location.href</h3>
  <p id="root"></p>
</body>

</html>

これらについても言及するのは悪くない:

また、相対パスが必要な場合は、単にwindow.location.pathname使用してwindow.location.pathname

また、ホスト名を取得する場合は、 window.location.hostnameを使用できます。

プロトコルを個別に取得する必要がある場合は、単にwindow.location.protocol実行してwindow.location.protocol

また、ページにhashタグがある場合、それを得ることができます: window.location.hash

したがって、 window.locatation.hrefは一度にすべてを処理します。基本的には:

window.location.protocol + '//' + window.location.hostname + window.location.pathname + window.location.hash === window.location.href;
    //true

また、ウィンドウスコープ内に既に存在する場合、ウィンドウを使用する必要はwindowません...

その場合は、次のものを使用できます。

location.protocol

location.hostname

location.pathname

location.hash

location.href


var currentPageUrlIs = "";
if (typeof this.href != "undefined") {
       currentPageUrlIs = this.href.toString().toLowerCase(); 
}else{ 
       currentPageUrlIs = document.location.toString().toLowerCase();
}

上記のコードは誰かを助けることもできます


  • window.location.hrefを使用して完全なURLを取得します。
  • window.location.pathnameを使用して、ホストから離れるURLを取得します。






url