J'ai une forme que j'utilise dans mon CMS que j'aimerais ajouter l'open supplémentaire pour enregistrer le formulaire sur KeyPress: "Ctrl + S"
Ceci fonctionne pour toutes les entrées à part les boutons Soumettre ne sont pas en train d'être Envoyé, cet exemple simple montre ce que je veux dire: p>
3 Réponses :
Essayez:
if($("#container form :submit:first").length)
{
$("#container form :submit:first").click();
}
else
{
$("#container form").submit();
}
La valeur d'un parce que vous soumettez le formulaire Directement (à l'aide de JS), vous ne cliquez pas sur un bouton Soumettre, rien n'a été soumis. p> au lieu d'appeler Soumettre le bouton CODE> est uniquement incluse dans la demande s'il s'agit du bouton Soumettre code> cliqué sur. .Submit () code> sur le formulaire, essayez d'appeler .Cliquez sur () Code> sur le bouton d'envoi que vous souhaitez être inclus. P> $(window).keypress(function(event) {
if (!(event.which == 115 && event.ctrlKey) && !(event.which == 19)) return true;
$("#container form input[name=save]").click();
event.preventDefault();
return false;
});
J'ai essayé cela mais avec soumission non clic. Merci
Le formulaire n'a pas de valeur d'action, et il existe plusieurs entrées de soumission. P>
Le multiple soumet pourrait em> pause .Submit () mais je ne pense pas que, je pense que ne pas avoir d'action pour envoyer le formulaire, c'est pourquoi il semble ne rien faire. p>
Edit / Correction: P>
J'ai appris de quelques choses depuis la publication de cette réponse (merci à @johnmagnolia), alors permettez-moi de me corriger: p>
Les attributs d'action vides réellement sont autorisés dans HTML 4, mais interdites dans HTML5. Dans la plupart des cas, un attribut d'action vide entraînera la soumission du formulaire à l'URL actuelle, y compris les paramètres em>. Plusieurs boutons de soumission ne sont pas un problème et non pourquoi le code n'a pas fonctionné, voir la réponse de @ Matt pour la bonne réponse. P>
La réponse de Matt semble mieux réellement
Désolé mais c'est incorrect, si un formulaire a une action vide, elle postera automatiquement à lui-même.
@JOHNMAGNOLIA C'est ce que la spécification dit que si elle est dépendante du navigateur (voir Stackoverflow.com/a/1132015/846480 ). NB, la bonne réponse à cette question est supérieure à ^^
Wow n'a pas réalisé que j'avais tort, en particulier avec le HTML5 change de mieux pour l'éliminer complètement.
Donc cela semblerait. Personnellement, j'ai utilisé des formulaires avec des attributs d'action vides ici et là et ils fonctionnent comme vous le disent sur les navigateurs que j'ai testés, le seul inconvénient est qu'ils enverront généralement le formulaire à l'adresse de la page y compris I> Obtenez des paramètres qui peuvent être un mal de tête si vous ne l'attendez pas. Plus simple pour spécifier le pagename si possible imo, mais si vous ne pouvez pas ou c'est dynamique, je suppose que la suppression de l'extrart serait la meilleure. Inutile de dire que j'ai appris un peu depuis ma réponse incorrecte originale (et je veux dire un peu) :)
Dans le CMS, il utilise ceci pour déterminer s'il s'agit de "Enregistrer", "Créer", "Supprimer", etc., donc oui, il est nécessaire de soumettre le bouton Soumettre.
J'ai essayé de soumettre le bouton d'envoi mais cela n'a pas fonctionné
@ M.Disappointment: la valeur d'un bouton d'envoi est uniquement incluse dans la demande s'il s'agit du bouton d'envoi cliqué sur.