2012-03-13 15 views
8

Mam URL:Jak wyciąć podciąg z łańcucha na koniec za pomocą JavaScript?

http://localhost/40ATV/dashboard.php?page_id=projeto_lista&lista_tipo=equipe 

Chcę uzyskać adres po ostatniej desce rozdzielczej przy użyciu javascript:

dashboard.php?page_id=projeto_lista&lista_tipo=equipe 
+0

Witaj Erick, udostępniony przez ciebie link znajduje się na komputerze lokalnym, więc nie jest widoczny. Jeśli ponownie sformułujesz pytanie za pomocą prostego fragmentu kodu z tego, co aktualnie masz, to mogę spróbować odpowiedzieć na – Rowan

+0

Czy twój podciąg będzie zawsze zaczynać '/ dashboard ...? Edycja: @Rowan, link jest tylko przykładem łańcucha, z którego próbuje wyciąć podciąg. Mam nadzieję. –

+0

Haha, oops.Fail :) Posłuchaj @Elliot - zdezorientowany mnie, ponieważ wydaje się, że jest to link, naturalną reakcją jest kliknięcie – Rowan

Odpowiedz

16

Można użyć indexOf i substr dostać podnapis chcesz:

//using a string variable set to the URL you want to pull info from 
//this could be set to `window.location.href` instead to get the current URL 
var strIn = 'http://localhost/40ATV/dashboard.php?page_id=projeto_lista&lista_tipo=equipe', 

    //get the index of the start of the part of the URL we want to keep 
    index = strIn.indexOf('/dashboard.php'), 

    //then get everything after the found index 
    strOut = strIn.substr(index); 

Zmienna strOut zawiera teraz wszystko po /dashboard.php (włączając ten ciąg).

Oto demo: http://jsfiddle.net/DupwQ/

Docs -

+1

Idealnie! Dzięki! –

4

Natywna metoda JavaScript String substr[MDN] może osiągnąć to, czego potrzebujesz . Po prostu podaj indeks początkowy i pomiń parametr długości, a on chwyta się aż do końca.

Teraz, jak uzyskać indeks początkowy? Nie podałeś żadnych kryteriów, więc nie mogę w tym pomóc.

+0

Nie wydaje mi się to takie proste. substr nie może znaleźć określonej grupy obiektów characteres. –

+0

Tak. W tym celu musisz znaleźć indeks początkowy. – FishBasketGordo

4

Jeśli początek jest zawsze "http: // localhost/40ATV" można to zrobić:

var a = "http://localhost/40ATV/dashboard.php?page_id=projeto_lista&lista_tipo=equipe"; 
var cut = a.substr(22); 
+1

Może pomóc wyjaśnić, jak coś działa, a nie tylko odpowiadać na pytanie z utylitarną odpowiedzią. substr/substring i indexOf to wszystkie ważne operacje, które można/należy uwzględnić. – Tracker1

+0

Dzięki za wejście. Jestem tu nowy, więc proszę o mnie proszę :) – fruitcup

+0

Nie jest to problem .. po prostu oferuję porady dla bardziej konstruktywnych odpowiedzi. :) – Tracker1

1

Nie potrzeba jQuery, zwykły stary javascript będzie wykonać zadanie tylko w porządku.

var myString = "http://localhost/40ATV/dashboard.php?page_id=projeto_lista&lista_tipo=equipe"; 
var mySplitResult = myString.split("\/"); 
document.write(mySplitResult[mySplitResult.length - 1]);​ 

a jeśli chcesz wiodącą/

document.write("/" + mySplitResult[mySplitResult.length - 1]);​ 
0

Przede wszystkim SPLIT URL:

var str = "http://localhost/40ATV/dashboard.php?page_id=projeto_lista&lista_tipo=equipe"; 
var arr_split = str.split("/"); 

Znajdź ostatnią tablicę:

var num = arr_split.length-1; 

Dostajesz reklama ubierać po ostatnim myślnikiem:

alert(arr_split[num]); 
1

To może być nowe, ale metoda substring zwraca wszystko, począwszy od określonego indeksu na końcu łańcucha.

var string = "This is a test"; 

console.log(string.substring(5)); 
// returns "is a test" 
Powiązane problemy