J'ai un formulaire comme celui-ci
<form name="test" action="action.php" method="get"> <input type="text" /> <input type="button" value="download"/></form>
J'ai besoin d'un événement de clic pour le bouton de téléchargement. Par exemple. Si je clique sur télécharger, il doit être envoyé en tant que action.php et exécuter $ ('# button'). Cliquez sur (function () { également. Comment puis-je le faire.
3 Réponses :
Tout d'abord, notez que les éléments ne se ferment pas automatiquement, donc votre HTML actuel n'est pas valide; les éléments input doivent être dans le formulaire lui-même.
Une fois que cela est corrigé, vous pouvez trigger () un soumettre sur le formulaire parent à l'élément #button , comme ceci:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <form name="test" action="action.php" method="get"> <input type="text" /> <input type="submit" value="search" /> <input type="button" value="download" id="button" /> </form>
$('#button').click(function() {
console.log('Custom logic here...');
$(this).closest('form').trigger('submit');
});
$('form').on('submit', function(e) {
e.preventDefault();
console.log('Submitting form...');
});
Je suppose que ce n'est pas tout à fait cela, il veut un événement de clic sur le bouton de téléchargement ( '#button' ) et dans ce cas, il veut également soumettre
Oui, je viens de réaliser. Le modifier maintenant.
Mais peut-être que vous avez raison et qu'il souhaite les deux actions lors de la soumission ou du téléchargement
Je suis désolé, c'est peu clair pour moi. Ma question actuelle est stackoverflow.com/questions/55607291/... . Pouvez-vous s'il vous plaît jeter un oeil
Effectuez l'opération en cliquant sur le bouton 'download' puis déclenchez l'envoi du formulaire en utilisant trigger
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <form name="test" action="action.php" method="get"> <input type="text" /> <input type="button" value="download" class="download"></form>
$('.download').click(function(e){
alert('downloading!') //Your Download Logic HERE
$(this).parent().trigger('submit')//Trigger Form SUBMIT ONCE THE OPERATION IS DONE
})
Je suis désolé, c'est peu clair pour moi. Ma vraie question est stackoverflow.com/questions/55607291/…. Pouvez-vous s'il vous plaît jeter un oeil
@Ansh, veuillez d'abord confirmer cette question
Vous pouvez simplement soumettre votre formulaire par javascript, après avoir cliqué sur le bouton télécharger :
$('#button').click(function(){
...
document.forms["myform"].submit();
Je suis désolé, c'est peu clair pour moi. Ma vraie question est stackoverflow.com/questions/55607291/…. Pouvez-vous s'il vous plaît jeter un oeil
Pourquoi n'écrivez-vous pas le code pour soumettre le formulaire dans la fonction de clic?
Est-ce possible de soumettre sans téléchargement?
Comme OP l'a dit lui-même dans ses commentaires, ce n'est pas sa vraie question, mais stackoverflow.com/questions/55607291 l'est. Donc, ceci devrait être voté pour fermer.