表单onsubmit忽略动作

时间:2016-06-26 22:37:45

标签: javascript jquery html

我是JavaScript新手。我有一个带动作的表单,我需要在提交时使用JavaScript填写表单输入。我使用onsubmit函数按预期执行,但表单没有点击action属性中的操作,也没有数据发送到服务器。
有人能帮我找到遗失的东西吗?

的JavaScript / jQuery的:

$("#myForm").submit(function (e) {
  e.preventDefault();
  return fillFormValues();
})

function fillFormValues()
{
  $.get( ...,function( data ) {
    //fill my inputs values here
    return true;
  });
  return false;
}

HTML:

<form action="..." method="post" target="output_frame" id="myForm">
    <input name="first" id="first" type="hidden" value="">
    ...
    <input type="submit"  value="next">
</form>

1 个答案:

答案 0 :(得分:0)

你可以做的是阻止提交表单的jQuery事件默认值,执行ajax并设置值后触发将绕过jQuery提交侦听器的本机提交事件

$("#myForm").submit(function(e) {
  e.preventDefault();
  fillFormValues(this);
});

function fillFormValues(form) {
  $.get(..., function(data) {
    //fill your inputs values here
    form.submit(); //trigger native submit which is not caught by jQuery
  });
}