Join our mailing list!
Ceci est mon php si son pertinent:
query($save1); if (!$success) { die("Couldn't enter data: ".$mysqli->error); echo "unsuccessfully"; } echo "successfully"; ?>
Ceci est une capture d’écran du journal:
- Remplir le formulaire avec les données de la ligne de table en utilisant javascript
- jQuery: lie ajaxForm à un formulaire sur une page chargée via .load ()
- Le bouton Soumettre ne déclenche pas un événement de soumission jQuery lié sur IE
- Jquery valeur par défaut dans le champ mot de passe
- Sails.js forme post ne soumettant aucune donnée
- Comportement de soumission de formulaire par défaut après l’exécution de jQuery forms.js ajaxSubmit
- Basculer l’atsortingbut désactivé sur l’entrée en fonction de la case à cocher dans jQuery
- Comment changer la valeur du champ de saisie masqué avant de le soumettre
- Collecte tous les éléments d’un formulaire dans jQuery
- Exclure les champs de formulaire masqués de la soumission
L’élément , lorsqu’il est placé dans un formulaire, le soumettra automatiquement, sauf indication contraire. Vous pouvez utiliser les 2 stratégies suivantes:
- Utilisez
pour remplacer le comportement de soumission par défaut
- Utilisez
event.preventDefault()
dans l’événement onSubmit pour empêcher la soumission du formulaire.
Solution 1:
- Avantage: simple changement de balisage
- Inconvénient: subvertit le comportement de formulaire par défaut, en particulier lorsque JS est désactivé. Que se passe-t-il si l’utilisateur veut cliquer sur “entrer” pour le soumettre?
Insérez un atsortingbut de type
supplémentaire dans votre balise de bouton:
Solution 2:
- Avantage: le formulaire fonctionnera même si JS est désactivé et respecte le formulaire standard UI / UX, de sorte qu’au moins un bouton est utilisé pour la soumission.
Empêcher la soumission du formulaire par défaut lorsque vous cliquez sur le bouton. Notez que ce n’est pas la solution idéale, car vous devriez en fait écouter l’événement submit et non l’événement click du bouton :
$(document).ready(function () { // Listen to click event on the submit button $('#button').click(function (e) { e.preventDefault(); var name = $("#name").val(); var email = $("#email").val(); $.post("process.php", { name: name, email: email }).complete(function() { console.log("Success"); }); }); });
Meilleure variante:
Dans cette amélioration, nous écoutons l’événement submit émis par l’élément
:
$(document).ready(function () { // Listen to submit event on the
Encore meilleure variante: utilisez .serialize()
pour sérialiser votre formulaire, mais n’oubliez pas d’append des atsortingbuts de name
à votre entrée:
L’atsortingbut name
est requirejs pour que .serialize()
fonctionne, comme indiqué dans la documentation de jQuery :
Pour que la valeur d’un élément de formulaire soit incluse dans la chaîne sérialisée, l’élément doit avoir un atsortingbut name.
Et ensuite dans votre JS:
$(document).ready(function () { // Listen to submit event on the