表单正在通过取消绑定提交


form is getting submitted with unbind

  <script type="text/javascript">
       //$('#student').change(function() { 
      $('#but').click(function() { 
      var payid = $("#feType").val();
      var course = $("#course").val();
      var course_id = $("#course_id").val();
      var stud_id = $("#student").val();
      var paid_amt1 = $("#paid_amt").val();
      var serializedData = $("form").serialize();
        $.ajax({
                dataType: "json",
                url: '<?php echo ADMINPATH;?>student/getNewFee/'+payid+'/'+course_id+'/'+stud_id+'/'+course,
                data: '',
                async: true,                    
                success: function(data){
                  if(data == false){
                     $("form").unbind('submit').submit();
                     alert("This student doesn't have transport");
                     return false;
                  }
                  var result = data; 
                  if(Number(result) >= Number(paid_amt1)){
                    $("#fee_data").submit(function(){
                      return true;
                    });    
                  }else {
                    $("form").unbind('submit');
                      alert("Due Amount is less than paid amount");
                      return false;        
                  }
               }      
         });
    });
</script>

如果数据来到 if 条件,表单必须提交,如果数据到达其他条件,表单提交应停止。"如果"条件运行良好,但进入其他方面,表格仍在提交。

您正在从 else 部分调用 submit(( 方法。从其他部分删除以下代码。

 $("form").unbind('submit').submit(); 

删除此行,它不是必需的,并且您正在使用它触发提交:

$("form").unbind('submit').submit();

如果您只想删除提交时回调,则可以执行以下操作:

$("form").unbind('submit');

您需要在点击事件结束前添加return false

$('#but').click(function() { 
  // ....
    return false;
});