Ajax提交表单(包括上传文件)

页面代码:

        <form id="form">
            <input type="file" name="file"/>
            <input type="text" name="name"/>
            <input type="button" value="upload" onclick="test();"/>
        </form>

方法一:使用FormData对象

        function test(){
            var form = new FormData(document.getElementById("form"));
            $.ajax({
                url:"${pageContext.request.contextPath}/test/testupload",
                type:"post",
                data:form,
                processData:false,
                contentType:false,
                success:function(data){
                    ...
                },
                error:function(e){
                    alert("错误!!");
                    ...
                }
            });
        }

使用FormData,在构造这个对象的时候,把表单的对象,作为一个参数放进去,然后就会得到这个表单对象里面的所有的参数,在表单中,不需要声明enctype ="multipart/form-data" ,就可以直接提交。

方法二:使用jquery.form.js

Jquery.form.js是一个表单插件,提供了许多便捷的方法。详细请参考:http://plugins.jquery.com/form/

使用jquery.form.js的表单插件来提交表单只需要一句代码:

$("#form").ajaxSubmit();

猜你喜欢

转载自blog.csdn.net/baidu_23275675/article/details/83753437