2014-05-17 100 views
0

我的页面中有多个表单。我希望能够从单个Jquery函数发布这些表单。用Jquery发布多个表单

它只适用于第一种形式。我想这是因为所有形式的有相同的ID,我将需要使用点击()的函数,而不是提交(),并使用类似$(本).closest(“形式”)...

<form class="form-horizontal" role="form" id="fpostcomm"> 
<input name="cmt" type="text" class="form-control input-sm" id="inputcommt" autocomplete="off"> 
</form> 


<script> 
$(document).ready(function(){ 
    $("#fpostcomm").submit(function(){ 
     $.ajax({type:"POST", data: $(this).serialize(), url:"ajax/ajxaaddcmt.php", 
      success: function(data){ 
       $("#inputcommt").val(''); 
      }, 
         error: function(){ 
        alert ("Error."); 
      } 
     }); 
     return false; 
    }); 
}); 
</script> 
+1

改为使用类。 ID应该是_unique_并且ID选择器仅选择第一个匹配的元素。 – undefined

回答

2

您不能重复使用ID。它们在文档中必须是唯一的。解决这个问题,然后你可以抓住他们,但是你需要。

如果你想在它们上面使用一个单独的共享名,可以改为使用类。

<form class="form-horizontal fpostcomm" role="form"> 
<input name="cmt" type="text" class="form-control input-sm inputcommt" autocomplete="off"> 
</form> 


<script> 
$(document).ready(function(){ 
    $(".fpostcomm").submit(function(){ 
     $form = $(this); 
     $.ajax({type:"POST", data: $(this).serialize(), url:"ajax/ajxaaddcmt.php", 
      success: function(data){ 
       $form.find(".inputcommt").val(''); 
      }, 
      error: function(){ 
        alert ("Error."); 
      } 
     }); 
     return false; 
    }); 
}); 
</script>