Ajax提交没有正确发生

时间:2012-08-08 09:37:30

标签: php ajax jquery

伙计这是我的第一个问题。我有一个表格,显示学生姓名和输入字段以输入他们的考试成绩。表格标题显示主题(在while循环中),并有一个输入字段,用于输入所有主题的最大标记。这个最大标记通过Ajax更新。它发生得不好。如果我们第一次按提交,则不会发生任何事情。如果我们第二次按提交,它会提交。如果我们按第三次,它会更新两次,如果我们按第四次,它会更新三次(成功消息显示三次) 代码 -

<script>
$(document).ready(function(){
$("#maxmarks<?php echo "$m";?>").validate({

    rules:{

        maxmarks:{

        number: true,

        }

    },
    messages:{

        maxmarks:{

            number: "Please enter a valid marks",

        }

    },
    submitHandler: function(form){

        $("#maxmarks<?php echo "$m";?>").submit(function(){

            $.ajax({

                url : 'components/teacher/performance/maxupdate.php', 
                type : 'POST', 
                data : $("#maxmarks<?php echo "$m";?>").serialize(),
                success : function(res){

                    $('#resultreturn').prepend(res);

                }
            });
            return false;
        }); 

    }                 
 });
 });
 </script>

表单与上面的脚本具有相同的ID。有人能告诉我这是什么问题吗?

1 个答案:

答案 0 :(得分:1)

你有两次提交处理程序。在submitHandler:后,您再次以.submit()

的身份执行此操作

一个或另一个 - 不是两个。

第一次提交表单时,它会创建提交处理程序(正如您用.submit()告诉它的那样),但实际上并没有运行它。

第二次运行它(因为你之前创建它),然后再次创建它。每次运行它都会得到更多。