Mam taki kod,
<form id="abc">
<input type="text" id="txt" />
</form>
a teraz chcę przekierować w ten sposób,
var temp = $("#txt").val();
url = "http://example.com/" + temp;
window.location.replace(url);
// or window.location(url);
Czy jest w ogóle w jQuery rozwiązanie tego problemu? Nadal mi na to pozwala url = http://example.com
.
javascript
jquery
url
redirect
gacon
źródło
źródło
Odpowiedzi:
Jak wspomniano w innych odpowiedziach, nie potrzebujesz do tego jQuery; możesz po prostu użyć standardowych właściwości.
Wygląda jednak na to, że nie znasz różnicy między
window.location.replace(url)
iwindow.location = url
.window.location.replace(url)
zastępuje bieżącą lokalizację w pasku adresu nową. Strona, która wywoływała funkcję, nie zostanie uwzględniona w historii przeglądarki. Dlatego w nowej lokalizacji kliknięcie przycisku Wstecz w przeglądarce spowoduje powrót do strony, którą przeglądałeś przed odwiedzeniem dokumentu zawierającego przekierowujący JavaScript.window.location = url
przekierowuje do nowej lokalizacji. Na tej nowej stronie przycisk Wstecz w przeglądarce wskazywałby oryginalną stronę zawierającą przekierowujący kod JavaScript.Oczywiście oba mają swoje przypadki użycia, ale wydaje mi się, że w tym przypadku należy trzymać się tego drugiego.
PS: Prawdopodobnie zapomniałeś o dwóch ukośnikach po
http:
linii 2 swojego JavaScript:źródło
mówię prawdę, nadal nie mam tego, czego potrzebujesz, ale
Powinien być
powie Ci to wyszukiwanie w witrynie window.location .
źródło
jQuery nie ma na to opcji ani nie powinno jej mieć. Jest to całkowicie poprawny skrypt javascript i nie ma powodu, aby jQuery udostępniał w tym celu funkcje opakowujące.
jQuery to po prostu biblioteka na szczycie javascript, nawet jeśli używasz jQuery, nadal możesz używać normalnego javascript.
Btw window.location nie jest funkcją, ale właściwością, którą należy ustawić w następujący sposób:
źródło
Spróbuj tego ... użyj jako alternatywy
źródło
Spróbuj tego...
Co to znaczy:
Znajdź formularz z
id
„abc”, zmień jegoattribute
nazwę „action”, a następnie prześlij go ...To działa dla mnie ... !!!
źródło
możesz to zrobić prościej bez jQuery
Pokaż fragment kodu
źródło
location = 'https://google.com'
to zmienia stronę - czy próbujesz na innych przeglądarkach?this
iwthis.location
konsoli - co widzisz?this
nie odwołujesz się dowindow
obiektu (a powyższy fragment nie działa)? (w kontekście globalnym przeglądarek należy ustawić na obiekt windows )