2013-08-14 20 views
5

benim geçerli sayfa bu biçimde olursa ...

http://www.mydomain.com/folder/mypage.php?param=value 

bu

http://www.mydomain.com/folder/mypage.php 

kullanarak javascript almak için kolay bir yol var mı

?

cevap

5

deneyin olduğunu. Tarayıcının yerleşik URL ayrıştırıcısını kullanın.

window.location.origin + window.location.pathname 

Ve geçerli sayfa olmayan bir URL'yi ayrıştırmak gerekiyorsa:

var url = document.createElement('a'); 
url.href = "http://www.example.com/some/path?name=value#anchor"; 
console.log(url.origin + url.pathname); 

Ve (IE location.origin olmadığından) IE desteklemek için:

location.protocol + '//' + location.host + location.pathname; 

(İlham kaynağı: https://stackoverflow.com/a/6168370/711902)

+0

Katılıyorum, gereksiz adımları olmadan tam olarak ihtiyacım olan şeyi gerçekleştirir. Teşekkür ederim. –

+0

bu, Opera 12'de (ve önceki sürümlerde) ve IE'de (http://www.w3schools.com/jsref/prop_loc_origin.asp) çalışmıyor. – Micer

+1

@Micer Good point. Bir IE alternatifi ile güncellendi. –

3

Hatta GET, birinci segmentte birçok parametreleri var split

var url = "http://www.mydomain.com/folder/mypage.php?param=value"; 
var url_array = url.split("?"); 
alert(url_array[0]); //Alerts http://www.mydomain.com/folder/mypage.php 

gibi URL GET olmadan parametreler olacak kullanmaya çalışın.

Bu DEMO

+0

Teşekkür ederim, sadece ihtiyacım olan şey! Sorudan bahsetmedim, ancak bu, hiçbir parametre iletilmediğinde de çalışır =) –

+0

Dize tabanlı çözümünüz, http://www.domain.com/page#anchor? Gibi hatalı biçimlendirilmiş bir URL'yi nasıl işleyebilir? parametre '? Belge nesnesini kullanmak ve bu api daha sağlam bir çözümdür IMO –

0

Bu normal ifadenin ve bölme şeyler yapmayın

var result = yourUrl.substring(0, yourUrl.indexOf('?')); 

Working demo

0
var options = decodeURIComponent(window.location.search.slice(1)) 
    .split('&') 
    .reduce(function _reduce (/*Object*/ a, /*String*/ b) { 
    b = b.split('='); 
    a[b[0]] = b[1]; 
    return a; 
    }, {}); 
2

bunu deneyin:

var url=document.location.href; 
var mainurl=url.split("?"); 
alert(mainurl[0]); 
İlgili konular