htmlで絶対パスを取得できますか?javascriptで絶対パスを取得
私はlocation.hrefを使用するとURLを取得できますが、どうすればfilename.htmlをトリミングできますか?
ここでは、パスを取得するためのより良い方法です。
ありがとうございます!
htmlで絶対パスを取得できますか?javascriptで絶対パスを取得
私はlocation.hrefを使用するとURLを取得できますが、どうすればfilename.htmlをトリミングできますか?
ここでは、パスを取得するためのより良い方法です。
ありがとうございます!
location.pathname
は、あなたにURLのローカル部分を与えます。
location.pathname.match(/[^\/]+$/)[0]
最後の部分のみが表示されます。あなたがhttp://somedomain/somefolder/file.html
上にある場合 - それはあなたがこのページのfile.html
マッチの後に '[0]'を追加すると、実価。さもなければ、あなたは一致の配列で終わります(*この場合1つ*) –
そうです。ありがとう! –
var full = location.pathname;
var path = full.substr(full.lastIndexOf("/") + 1);
を与えるあなたはwindow.location
オブジェクトを調べる場合は、
hash:
host: stackoverflow.com
hostname: stackoverflow.com
href: http://stackoverflow.com/questions/8401879/get-absolute-path-in-javascript
pathname: /questions/8401879/get-absolute-path-in-javascript
port:
protocol: http:
search:
が表示されますので、location.pathname
あなたが望むものです。最後の部分を抽出する場合は、正規表現を使用します。
var lastpart = window.location.pathname.match(/[^\/]+$/)[0];
このお試しください:
var loc = window.location.href;
var fileNamePart = loc.substr(loc.lastIndexOf('/') + 1);
それとも、 '/' 最後に、プロトコルのすべてを必要とする場合に使用することができます:
new RegExp('[^?]+/').exec(location.href)
とそれが一致することを心配しないでくださいを最初の '/'は貪欲な量指定子であるため、可能な限り一致することを意味します。最初の部分 '[^?]'は、t.php?param1=val1/val2
のようなパラメータ値に '/'が現れる可能性があるため、パラメータの前に一致することを止めることです。
[MDN window.location](https://developer.mozilla.org/en/DOM/window.location) – epascarello