2012-02-04 5 views
8

मैं इस मुद्दे को देख रहा था लेकिन मुझे इस विशिष्ट उद्देश्य के लिए कोई ठोस जवाब नहीं मिला। मान लीजिए कि मैं का URL करते हैं ...मैं जावास्क्रिप्ट/jquery का उपयोग कर यूआरएल से चर और फ़ाइल नाम प्राप्त कैसे हटा सकता हूं?

http://mysite.com/stuff/index.php?search=my+search

मैं कैसे इस URL हड़पने और index.php हटा सकता हूँ? खोज = यह मेरी + खोज तो यह सिर्फ http://mysite.com/stuff/ हो सकता है? असल में मैं सिर्फ एक फ़ाइल नाम के बिना मूल यूआरएल को पकड़ना चाहता हूं या चर प्राप्त कर सकता हूं ... कोई फर्क नहीं पड़ता कि यूआरएल क्या है (इसलिए मुझे प्रत्येक पृष्ठ के लिए फ़ंक्शन को कस्टमाइज़ नहीं करना है, जिसे मैं इसे उपयोग करना चाहता हूं)

तो एक अन्य उदाहरण के, अगर यह सिर्फ थे ...

http://mysite.com/silly.php?hello=ahoy

मैं सिर्फ http://mysite.com

की जड़

किसी को भी मुझे हाथ इस पता लगाना में दे सकते हैं वापस करना चाहते हैं? मैं पूरी तरह से खो गया हूँ।

उत्तर

17

lastIndexOf("/") उपयोग करके देखें:

var url = "http://mysite.com/stuff/index.php?search=my+search"; 
url = url.substring(0, url.lastIndexOf("/") + 1); 
alert(url); // it will be "http://mysite.com/stuff/" 

या

var url = "http://mysite.com/silly.php?hello=ahoy"; 
url = url.substring(0, url.lastIndexOf("/") + 1); 
alert(url); // it will be "http://mysite.com/" 
+0

धन्यवाद, मुझे लगता है मैं lastIndexOf का उपयोग किया जाएगा लगातार अब। – Ian

+0

मदद करने में खुशी .. – Aliostad

+0

'console.log (url)' चेतावनी से बहुत बेहतर है। – Tim

0

आप location.host या location.hostname के लिए देख रहे हैं। लेकिन क्या आप उन्हें मौजूदा यूआरएल की बजाय पूरी स्ट्रिंग से निकालना चाहते हैं?

मैं सवाल एक बार फिर पढ़ सकते हैं और ऐसा लगता है कि आप स्ट्रिंग के होते हैं जो मिलता हैं:

location.protocol + "//" + location.host + location.pathname 

है ना?

+4

'' location.pathname' शामिल होंगे index.php' –

2

आपके url str में है:

newstr = str.replace(/\/[^\/]+$/,""); 

newstr अब पथ शामिल करने के लिए, लेकिन पिछले / में छोड़कर डोर। अंतिम /, उपयोग रखने के लिए:

newstr = str.replace(/\/[^\/]+$/,"/"); 
2

पर विभाजन "/", पिछले टुकड़ा, उन्हें छोड़ देंगे वापस ऊपर में शामिल होने, स्लेश अनुगामी जोड़ें।

var path = location.href.split('/'); 
path.pop(); 
path = path.join("/") + "/"; 
संबंधित मुद्दे

 संबंधित मुद्दे