Javascript 提交通过ajax调用的表单

Javascript 提交通过ajax调用的表单,javascript,php,jquery,ajax,forms,Javascript,Php,Jquery,Ajax,Forms,我有一个表单,它将由ajax通过ajax请求生成,当我尝试提交所述表单时,实际上什么都没有发生。你知道为什么会这样吗 按照我的逻辑,它应该可以工作,因为表单与提交表单的另一个ajax函数不在同一页面中 无论如何,这是我的代码: 将创建表单的ajax: $(".editschool").change(function(){ var eschl = $(".editschool").val(); $.ajax({url:"update.php", data: {schoolid: eschl},

我有一个表单,它将由ajax通过ajax请求生成,当我尝试提交所述表单时,实际上什么都没有发生。你知道为什么会这样吗

按照我的逻辑,它应该可以工作,因为表单与提交表单的另一个ajax函数不在同一页面中

无论如何,这是我的代码:

将创建表单的ajax:

$(".editschool").change(function(){
var eschl = $(".editschool").val();
$.ajax({url:"update.php", 
data: {schoolid: eschl},
type:'post',
async: false,
success: function(data){
$('#vupdate').html(data);
$('#vupdate').show();
},
});
});
$("#udata").submit(function(){
                console.log("test");
                var formData1 = new FormData($(this)[0]);
                $.ajax({
                    url: "update.php",
                    type: 'POST',
                    data: formData1,
                    async: false,
                    success: function (data) {
                        if(data == "1"){
                            $("#uschoolname").val("");
                            $("#uschoolabout").val("");
                            $("#ufile").val("");
                        }
                    },
                    cache: false,
                    contentType: false,
                    processData: false
                });
                return false;
            });
表格:

$(".editschool").change(function(){
var eschl = $(".editschool").val();
$.ajax({url:"update.php", 
data: {schoolid: eschl},
type:'post',
async: false,
success: function(data){
$('#vupdate').html(data);
$('#vupdate').show();
},
});
});
$form .= '<form class="form-add" id="udata" method="post" role="form" enctype="multipart/form-data">';
        $form .= '
            <div class="form-group">
            <input type="text" class="form-control" id="uschoolname" name="uschoolname" value = "'.$sname.'" placeholder="Name of School">
            </div>';
        $form .= '
            <div class="form-group">
            <textarea class="form-control" rows="3" id="uschoolabout" name="uschoolabout" placeholder="About the School">'.$sabout.'</textarea>
            </div>';
        $form .= '<input type="hidden" name="sid" value = "'.$sid.'">';
        $form .= '
        <div class="form-group">
        <label for="exampleInputFile">Upload Syllabus</label>
        <input type="file" id="ufile" name="ufile">
        <p class="help-block">File type: png, jpg, jpeg, gif</p>
        </div>
        <button type="submit" class="btn btn-default pull-right">Submit</button>';
        $form .= '</form>';
$("#udata").submit(function(){
                console.log("test");
                var formData1 = new FormData($(this)[0]);
                $.ajax({
                    url: "update.php",
                    type: 'POST',
                    data: formData1,
                    async: false,
                    success: function (data) {
                        if(data == "1"){
                            $("#uschoolname").val("");
                            $("#uschoolabout").val("");
                            $("#ufile").val("");
                        }
                    },
                    cache: false,
                    contentType: false,
                    processData: false
                });
                return false;
            });

请注意,我的控制台没有任何错误。

能否尝试更改

$("#udata").submit(function(){ 


你是在收到表单后调用最后一块代码吗?在检索表单之前,已经调用了2个ajax脚本,下面的答案起到了作用,尽管我真的可以解释一下它与.submitgreat的不同之处!尽管它与.submit函数有何不同,又有何区别?只有在加载ajax生成的表单后调用该函数,.submit函数才能工作。否则,我们需要使用$(document).on(“提交”)