Javascript函数不显示第二个表单名称

Javascript函数不显示第二个表单名称,javascript,jquery,forms,Javascript,Jquery,Forms,我有两个不同id的表单,在javascript函数中,我将在变量名中获取表单id,但在变量名中,只有第一个表单id,而不是代码中的表单2 id HTML 控制台选项卡中的任何时候输出结果都是filterMemberByFamNum事实上我正在提交filterMemberByMemName表单 请帮帮我。您编写的javascript不知道如何区分这两个表单,因为您在$form上调用serialize-您有两个表单,所以它会选择找到的第一个表单。这只是问题的一部分。您有两个具有相同名称属性的表单。这

我有两个不同id的表单,在javascript函数中,我将在变量名中获取表单id,但在变量名中,只有第一个表单id,而不是代码中的表单2 id

HTML

控制台选项卡中的任何时候输出结果都是filterMemberByFamNum事实上我正在提交filterMemberByMemName表单


请帮帮我。

您编写的javascript不知道如何区分这两个表单,因为您在$form上调用serialize-您有两个表单,所以它会选择找到的第一个表单。这只是问题的一部分。您有两个具有相同名称属性的表单。这些应该是独一无二的

由于您已经在使用jQuery,请将其重写为

$.form-horizontal.on提交,函数事件{ var str=$this.serialize; var name=$this.attr'id'; console.logname; $.postmodel/handler.php?name=+name+&op=formSubmit, { “数据”:str },函数数据{ $'members'.htmldata; },json; 返回false; }; 然后去掉按钮上的凸点。实际上,您还需要使按钮type=submit


为什么你的表单有相同的名称?你知道这个.form的意思和它应该做什么吗?它正在刷新我的页面。我不想刷新我的页面,我正在使用ajax并从json获取数据。可能是您的php抛出了错误,而您没有使用jquery处理这些错误。请务必阅读以了解如何处理错误。
<form name="form" id="filterMemberByFamNum" class="form-horizontal" role="form">
  <div class="form-group">
    <label>Family Number</label> <input type="text" name="familyNumber" placeholder="Family Number" class="form-control">
  </div>
  <button type="button" class="btn btn-primary" onclick="filterMembers();return false;">Submit</button>
</form>

<form name="form" id="filterMemberByMemName" class="form-horizontal" role="form">
  <div class="form-group">
    <label>Member Name</label> <input type="text" name="member" placeholder="Member Name" class="form-control">
  </div>
  <button type="button" class="btn btn-primary" onclick="filterMembers();return false;">Submit</button>
</form>
function filterMembers() {
  //alert("Submitted");
  var str = $("form").serialize();
  var name = $(this.form).attr('id');

  console.log(name);

  $.post("model/handler.php?name=" + name + "&op=formSubmit", {
    'data': str
  }, function(data) {
    $('#members').html(data);
  }, "json");

  return false;
}