0

jQuery 打开我的表单操作,而不是在不更改页面的情况下提交表单。我现在正在工作的是,我不希望在提交表单时刷新页面,因为我想在提交/加载时集成进度条。感谢您的帮助。

这是我用于验证和重定向的 jQuery:

<script type="text/javascript" src="../javascript/jquery.js"></script>
<script type="text/javascript" src="../javascript/jquery.validate.js"></script>
<script type="text/javascript" src="../javascript/jquery.form.js"></script>
<script type="text/javascript">
            $('document').ready(function(){
            $('#form').validate({
                rules:{
                    "fname":{
                        required:true,
                        maxlength:40
                    },
                    "lname":{
                        required:true,
                        maxlength:40
                    },
                    "mobile":{
                        required:true,
                        number: true
                    },
                    "address":{
                        required:true
                    },
                    "year":{
                        required:true
                    },
                    "month":{
                        required:true
                    },
                    "day":{
                        required:true
                    },
                    "files": {
                        accept:"jpg,png,jpeg,gif"
                    },
                    "vid": {
                        accept: "ogg|ogv|avi|mpe?g|mov|wmv|flv|mp4"
                    }},
                messages:{
                    "fname":{
                        required:"First Name is required"
                    },
                    "lname":{
                        required:"Last Name is required"
                    },
                    "mobile":{
                        required:"Mobile is required"
                    },
                    "address":{
                        required:"Address is required"
                    },
                    "files":{
                        accept: "Please choose a valid image file (jpg/png/jpeg/gif)"
                    },
                    "vid" : {
                        accept: "Please choose a valid video file (ogg/ogv/avi/mpg/mpeg/mov/flv/mp4)"
                    }}
                    submitHandler: function(form){
                        $(form).ajaxSubmit({
                            target: '#preview',
                            success: function() {
                            //$('form').find('input[type=text], select,input[type=file]').val('');

                        //  }
                        });
                        }
                    })
                });

这是我的表格的一部分:

<form id="form" name="form" action="submit_video.php" method="POST" enctype="multipart/form-data">

</form>
4

1 回答 1

0

引用操作:

“jQuery 打开我的表单操作,而不是在不更改页面的情况下提交表单。”

语法错误将阻止插件运行,默认表单操作将在提交时发生。


你的代码...

}}
submitHandler: function(form){
    $(form).ajaxSubmit({
        target: '#preview',
        success: function() {
        //$('form').find('input[type=text], select,input[type=file]').val('');
    //  }
    });
    }

您的.validate()调用中至少有两个语法错误。

1) 在. 的回调函数中submitHandler,取消注释右括号 , 。}successajaxSubmit()

看我的评论...

submitHandler: function(form){
    $(form).ajaxSubmit({
        target: '#preview',
        success: function() {
            //$('form').find('input[type=text], select,input[type=file]').val('');
        } // <-- you need this brace to close the success callback function
    });   // <-- close ajaxSubmit
}         // <-- close submitHandler

2)您还缺少一个逗号来将您的messages选项与您的submitHandler回调分开。此语法错误将阻止插件运行,您的表单将使用默认表单操作提交

}},  // <-- you need this comma here
submitHandler: function(form){

我强烈建议您正确格式化和缩进您的代码,以便更容易发现语法错误。

<script type="text/javascript">
    $('document').ready(function(){
        $('#form').validate({
            rules: {
                "fname": {
                    required: true,
                    maxlength: 40
                },
                // etc.
            },
            messages: {
                "fname": {
                    required: "First Name is required"
                },
                // etc.
            },
            submitHandler: function(form) {
                // your function
            }
        }); // close .validate()
    });  // close document.ready
<script>
于 2013-08-30T17:38:56.813 回答