J'essaie de ne pas recharger mon formulaire si mon mot de passe 1 et 2 ne correspond pas lorsque je clique sur Soumettre. Ce qui ne va pas avec mon code, joindre HTML et JS.
$(document).ready( function() {
$("#submit").click( function() {
var password1 = $("#password");
var password2 = $("#password2");
alert(password2);
if (password1 /= password2) {
preventDefault();
}
});
});
3 Réponses :
Si je me rappelle correctement, vous n'obtenez que la référence à l'élément DOM. Pour obtenir la valeur, vous devez utiliser Vous faites également une division au lieu d'une comparaison. Votre comparaison de la déclaration IF doit être la suivante: p> Vous devez également passer L'objet événement sur votre auditeur de click. Donc dans l'ensemble, il devrait être: p> .val () code> si (mot de passe1.val ()! == Password2.val ()) { Code> P>
Essayé cela, vu ma faute de frappe, ne fonctionne toujours pas. Devrais-je changer mes déclarations Var ASWELL ou devraient-elles rester les mêmes?
Ouais n'a pas remarqué. Existe-t-il une fonction globale preventDefault de code> sur votre code? Vous devrez peut-être avoir un «code> événement code> param sur votre fonction Onclick et utilisez la fonction préventiveDefault code> de cet objet. Je vais mettre à jour ma réponse
Je n'ai pas de fonction OnClick pour le bouton d'envoi, cela fonctionne via mes routres.py et envoie une méthode postale. Je pense que JQuery domine cela? Je suis nouveau à JQuery. Ma pensée était que Purtissdefault empêche la méthode postale qui soumettre généralement.
Vous créez un écouteur d'événement de clic sur votre bouton d'envoi. Je vous suggère de lire les bases JavaScript et de la façon dont JQuery fonctionne afin de bien comprendre ce que vous essayez de faire. Là encore, je ne vous suggère pas d'utiliser JQuery depuis que de nombreuses fonctions qu'ils fournissaient sont désormais disponibles sur les navigateurs modernes. J'ai mis à jour ma réponse. J'espère que cela aide!
une partie de la connexion de l'événement de clic à p> PRENVENDEFAULT () CODE>,
Le comparateur logique simple ! = Code> doit être utilisé dans votre exemple puisqu'il est agnostique sur le type d'objet, empêchez enfin une validation vraie si les champs sont vides <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js"></script>
<form id="form" action="">
<label for="password">Lösenord: </label>
<input type="password" class="form-control" id="password" name="password" placeholder="Lösenord" required>
<p>
</p>
<label for="password2">Upprepa Lösenord: </label>
<input type="password" class="form-control" id="password2" name="password2" placeholder="Lösenord" required>
<p>
<button id="submit">Ok</button>
</p>
</form>
Mis à part les problèmes indiqués par @joshua robles,
Ajoutez une attribut code> vide code> à vos champs d'entrée tels que celui-ci: p>
Code complet et Démo: p> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<label for="password">Lösenord: </label>
<input type="password" class="form-control" id="password" name="password" placeholder="Lösenord" value="" required>
<p></p>
<label for="password2">Upprepa Lösenord: </label>
<input type="password" class="form-control" id="password2" name="password2" placeholder="Lösenord" value="" required>
<p></p>
<input type="submit" id="submit">
ignorer la "fonction d'alerte"
mot de passe1 / = mot de passe2 code>? Qu'essayez-vous avec la division ici?Je pense que vous avez un typo, "mot de passe1 / = mot de passe2" doit beif mot de passe1! = Password2
@Codemaniac Je suis à peu près sûr qu'ils tentent "pas =" là-bas. Je pense que Haskell utilise cet opérateur.