关闭

ajax(或者jquery)提交整个form表单

580人阅读 评论(0) 收藏 举报

方法一:

$.ajax({
        cache: true,
        type: "POST",
	beforeSend: function(request) {
		request.setRequestHeader("userId", "123456");
	},
        url:"localhost:8080/PBR_SERVICE/rest/upload/imgUpload?type=1",
        data:$('#yourformid').serialize(),// 你的formid
        async: false,
        error: function(request) {
               alert("Connection error");
        },
        success: function(data) {
		//其中data的结构:{"error":"1,"success":null},可以将后台的处理结果放在这个JSON对象的2属性中,在前台回去回应给用户
               $("#appcreshi").parent().html(data.success);
        }
});
好处:

1、serialize() 方法通过序列化表单值,创建 URL 编码文本字符串,不需要用JSON对象形式{"userId":,"123",“mid”:"23"......}将每个参数都作为属性传过去,这对多表单域的form提交很有好处;同时,对于图片的上传,不用考虑如何传图片二进制值的问题。

2、因为是ajax请求,可以加请求头

3、可以将后台处理的结果回应给用户

方法二:

 $.post(
	url,
	{"":,"random":Math.random()},
	function(data){
		alert(data.success);
	}
);
弊端:需要用JSON对象形式{"userId":,"123",“mid”:"23"......}将每个参数都作为属性传过去,这对多表单域的form提交很不方便,且不能加请求头

方法三:

var options ={   
                    url:'localhost:8080/PBR_SERVICE/rest/upload/imgUpload?type=1',   
                    type:'post',                    
                    data:null,
                    success:function(data){
                   	 if(data.statusCode=="OK") {  
                    	
		   	 }else{

                   	 } 
                    }   
                 };
              var form =$("form[name=form1]");//form1:表单ID  在表单界面只用这一个表单ID
              form.ajaxSubmit(options);   
弊端:不能加请求头




  

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:116012次
    • 积分:2458
    • 等级:
    • 排名:第15620名
    • 原创:126篇
    • 转载:60篇
    • 译文:1篇
    • 评论:8条
    最新评论