2013-03-22 11 views
6

Jest to kod z login.html:Jak zachować parametry zapytania URL, gdy podążasz za linkiem?

<ul> 
    <li class="introduction"> 
    <a href="introduction.html"> 
     <span class="icon"></span> 
     Introduction 
    </a> 
    </li> 
    <li class="login active"> 
    <a href="#"> 
     <span class="login"></span> 
     Login 
    </a> 
    </li> 
</ul> 

linku zewnętrznego najpierw wziąć do aktualnej strony (login) z niektórych parametrów kwerendy chcę zachować. Jeśli użytkownik kliknie pierwszy link introduction, zostanie załadowany plik introduction.html. Jednak wszystkie parametry zapytania poprzedniej strony (login) zostaną utracone.

Czy mogę mimo to załadować tę stronę, zachowując parametry zapytania? Albo za pomocą HTML albo JavaScript.

Wielkie dzięki.

+1

Modyfikowanie adresu URL łącza w celu uwzględnienia parametrów to opcja –

+1

Parametry zapytania? Masz na myśli wartości GET, które analizujesz na tej stronie? –

+0

Jakie ramy są używane, jeśli jakieś? – awbergs

Odpowiedz

11

Część adresu URL, który Cię interesuje, nazywa się search.

mogą Ci link do innej strony z tymi samymi parametrami stosując

<a onclick="window.location='someotherpage'+window.location.search;">Login</a> 
3

Automatycznie wstawiaj aktualne params do jakichkolwiek powiązań uważasz za godne za pomocą atrybutu rel="" na <a> tagów (przy użyciu jQuery):

<a href="introduction.html" rel="keep-params">Link</a> 
// all <a> tags containing a certain rel="" 
$("a[rel~='keep-params']").click(function(e) { 
    e.preventDefault(); 

    var params = window.location.search, 
     dest = $(this).attr('href') + params; 

    // in my experience, a short timeout has helped overcome browser bugs 
    window.setTimeout(function() { 
     window.location.href = dest; 
    }, 100); 
}); 
+0

Co to jest z ustawionym czasem oczekiwania? Jakie napotkano błędy? – awbergs

+0

Wystąpiły problemy, w których przeglądarka przetwarza zmianę położenia bez wykonywania innych instrukcji funkcji i powodujących dziwne zachowanie. Trwa to już kilka lat, ale lubię to utrzymywać, aby być bezpiecznym. Jest to ta sama metoda, którą Google Analytics stosuje dla linków zewnętrznych. –

Powiązane problemy