J'ai du code comme ça,
<form id="abc">
<input type="text" id="txt" />
</form>
et maintenant je veux rediriger comme ça,
var temp = $("#txt").val();
url = "http://example.com/" + temp;
window.location.replace(url);
// or window.location(url);
Y at-il de toute façon dans jQuery pour résoudre ce problème? Cela me permet toujours d'avoir url = http://example.com
.
Comme mentionné dans les autres réponses, vous n'avez pas besoin de jQuery pour le faire; vous pouvez simplement utiliser les propriétés standard.
Cependant, il semble que vous ne sembliez pas connaître la différence entre window.location.replace(url)
et window.location = url
.
window.location.replace(url)
remplace l'emplacement actuel dans la barre d'adresse par un nouvel emplacement. La page qui appelait la fonction ne sera pas incluse dans l'historique du navigateur. Par conséquent, sur le nouvel emplacement, cliquer sur le bouton Précédent de votre navigateur vous ramènerait à la page que vous étiez en train de consulter avant de visiter le document contenant le code JavaScript redirigé.window.location = url
redirige vers le nouvel emplacement. Sur cette nouvelle page, le bouton Précédent de votre navigateur pointe vers la page d'origine contenant le code JavaScript redirigé.Bien sûr, les deux ont leurs cas d'utilisation, mais il me semble que dans ce cas, vous devriez vous en tenir à ce dernier.
P.S .: Vous avez probablement oublié deux barres obliques après http:
à la ligne 2 de votre JavaScript:
url = "http://abc.com/" + temp;
te dis le vrai, je ne comprends toujours pas ce dont tu as besoin, mais
window.location(url);
devrait être
window.location = url;
une recherche sur window.location référence vous le dira.
jQuery n'a pas d'option pour cela, et ne devrait pas en avoir une. C'est un code javascript parfaitement valide et il n'y a aucune raison pour que jQuery fournisse des fonctions d'encapsulation pour cela.
jQuery est juste une bibliothèque au-dessus de javascript, même si vous utilisez jQuery, vous pouvez toujours utiliser du javascript normal.
Btw window.location n'est pas une fonction mais une propriété que vous devez définir comme ceci:
window.location = url;
var temp="/yourapp/";
$(location).attr('href','http://abcd.com'+temp);
Essayez ceci ... utilisé comme alternative
Essaye ça...
$("#abc").attr("action", "/yourapp/" + temp).submit();
Ce que cela veut dire:
Recherchez un formulaire avec id
"abc", modifiez-le attribute
nommé "action" puis soumettez-le ...
Cela fonctionne pour moi ... !!!
vous pouvez le faire plus simplement sans jquery
location = "https://example.com/" + txt.value
function send() {
location = "https://example.com/" + txt.value;
}
<form id="abc">
<input type="text" id="txt" />
</form>
<button onclick="send()">Send</button>