Existe-t-il un moyen d'utiliser javascript et JQuery pour ajouter des champs supplémentaires à envoyer à partir d'un formulaire HTTP à l'aide de POST?
Je veux dire:
<form action="somewhere" method="POST" id="form">
<input type="submit" name="submit" value="Send" />
</form>
<script type="text/javascript">
$("#form").submit( function(eventObj) {
// I want to add a field "field" with value "value" here
// to the POST data
return true;
});
</script>
Réponses:
Oui, vous pouvez essayer avec des paramètres cachés.
la source
.appendTo(this)
serait probablement mieux.appendTo('#form')
est bien meilleur, car une telle approche permet de soumettre un autre formulaire avec les valeurs de celui-ci.$(this).find("input[name="+"something"+"]").remove();
Essaye ça:
la source
this
au lieu du redondant#form
la source
Vous pouvez ajouter un
hidden
input
avec la valeur que vous devez envoyer:la source
Cela marche:
la source
$('body').append(form); $(form).submit();
Peut être utile pour certains:
(une fonction qui vous permet d'ajouter les données au formulaire en utilisant un objet, avec substitution pour les entrées existantes, s'il y en a) [pure js]
(la forme est un domaine, et non un objet jquery [ jqryobj.get (0) si vous avez besoin ])
Utilisation :
tu peux aussi l'utiliser comme ça
vous pouvez ajouter # si vous le souhaitez aussi ("#myformid").
la source