Как добавить дополнительные поля в форму перед отправкой?



есть ли способ использовать javascript и JQuery, чтобы добавить некоторые дополнительные поля для отправки из формы HTTP с помощью POST?



Я имею в виду:



<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>
708   5  

5 ответов:

да.Вы можете попробовать с некоторыми скрытыми парами.

  $("#form").submit( function(eventObj) {
      $('<input />').attr('type', 'hidden')
          .attr('name', "something")
          .attr('value', "something")
          .appendTo('#form');
      return true;
  });

попробуйте это:

$('#form').submit(function(eventObj) {
    $(this).append('<input type="hidden" name="field_name" value="value" /> ');
    return true;
});

вы можете добавить hiddeninput С любым значением вам нужно отправить:

$('#form').submit(function(eventObj) {
    $(this).append('<input type="hidden" name="someName" value="someValue">');
    return true;
});
$('#form').append('<input type="text" value="'+yourValue+'" />');

это работает:

var form = $(this).closest('form');

form = form.serializeArray();

form = form.concat([
    {name: "customer_id", value: window.username},
    {name: "post_action", value: "Update Information"}
]);

$.post('/change-user-details', form, function(d) {
    if (d.error) {
        alert("There was a problem updating your user details")
    } 
});

Comments

    Ничего не найдено.