Javascript:Bloc de soumettre le formulaire sur la Touche Enter appuyez sur
J'ai une page web où j'ai 2 formulaires lorsque je clique sur la touche entrée, je vais appeler une fonction javascript pour la force de la page à charger une autre page.Mon code est
function SearchUser()
{
var text = document.getElementById("searchItem").value;
text = text == "" ? -1 : text;
var by = document.getElementById("listBy").value;
var on="";
if(by==1)
{
on="USERNAME";
}
else if(by==2)
{
on="FIRSTNAME";
}
else if(by==3)
{
on="EMAIL_ID";
}
gotoUrl="userlist.php?searchItem="+text+"&onSearch="+on;
alert(gotoUrl);
window.navigate=gotoUrl;
}
et
$(document).ready(function()
{
$("#frmUserListSearch").keyup(function(event)
{
if(event.keyCode == 13)
{
SearchUser();
}
});
});
Mais la page est en train de faire un formulaire de soumission lors de la SearchUSer fonction appelée.J'obtiens l'url est correcte dans l'alerte.Mais La page ne se charge pas dans le brower
Des Idées ???
Merci d'avance
Vous devez vous connecter pour publier un commentaire.
MODIFIER due à la Question d'origine edit:
tous vous avez besoin est:
modifié pour refléter commentaire
Retourner false souvent fait le tour.
http://javascript.about.com/library/bldisdef.htm
J'ai deux recommandations. Tout d'abord, utilisez l'événement keydown au lieu de keyup (il attrape "entrer" avant de soumettre mieux). Deuxièmement, dans votre SearchUser() de la fonction, l'utilisation fenêtre.emplacement au lieu de fenêtre.naviguer pour aller à une autre page.
REMARQUE: N'oubliez pas d'enlever le "alert()" à l'intérieur de la SearchUser (), fonction qu'il provoque la forme de soumettre avant de quitter la page.
Vous pouvez le faire en utilisant l'attribut action du formulaire, sans avoir à traiter avec les principaux événements, étant donné que vous aurez besoin plus tard javascript pour prendre des mesures sur le contrôle qui soumet le formulaire.