Gibt es eine Möglichkeit, mit Javascript und JQuery einige zusätzliche Felder hinzuzufügen, die mithilfe von POST von einem HTTP-Formular gesendet werden sollen?
Ich meine:
<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>
Antworten:
Ja. Sie können es mit einigen versteckten Parametern versuchen.
quelle
.appendTo(this)
wäre wahrscheinlich besser.appendTo('#form')
ist viel besser, da ein solcher Ansatz das Senden eines anderen Formulars mit Werten aus diesem ermöglicht.$(this).find("input[name="+"something"+"]").remove();
Versuche dies:
quelle
this
anstelle der redundanten#form
quelle
Sie können ein
hidden
input
mit dem Wert hinzufügen , den Sie senden möchten:quelle
Das funktioniert:
quelle
$('body').append(form); $(form).submit();
Kann für einige nützlich sein:
(Eine Funktion, mit der Sie die Daten mithilfe eines Objekts zum Formular hinzufügen können, wobei vorhandene Eingaben überschrieben werden, falls vorhanden.) [pure js]
(form ist ein dom el und kein jquery-objekt [ jqryobj.get (0) falls erforderlich ])
Verwenden :
Sie können es auch so verwenden
Sie können # hinzufügen, wenn Sie möchten ("#myformid").
quelle