1. 程式人生 > >form表單,轉Map,轉List

form表單,轉Map,轉List

1、form表單包含,select下拉列表,input輸入框等,轉為Map,js如下:

            var baseInfo = {};
        	var formArray =$("#baseInfo").serializeArray();
        	$.each(formArray,function(i,item){
        		baseInfo[item.name] = item.value;
        	});

注:$("#baseInfo"),baseInfo是form的id

 

2、form表單包含,select下拉列表,input輸入框等,轉為List<Map>,js如下:

			var workInfoArr=[];
			$("#workContent form").each(function(){
				var formObject01 = {};
				var formArray01 =$(this).serializeArray()
	        	        $.each(formArray01,function(i,item){
	        		      formObject01[item.name] = item.value;
	        	        });
				workInfoArr.push(formObject01);
			})

注:$("#workContent form"),workContent 是div的id,取這個div下的所有form進行遍歷

 

3、ajax的呼叫,傳遞的引數如下:

            var jg={"baseInfo":baseInfo,"workInfoArr":workInfoArr}
        	$.ajax({
                type: "post",
                url:"${pageContext.request.contextPath}/refordInfo/updateRefordInfo",
	        async: true,
	        data: JSON.stringify(jg),
	        contentType : 'application/json',
	        dataType:"json",
	        success: function(data) {
                    alert("提交成功")
                },
                error: function(request) {
                    alert("提交失敗")
                }
              
            });

4、後端使用@RequestBody Map<String,Object> map接收引數

 

總述:form表單的所有input,select,radio,checkbox都必須有name屬性,因為遍歷轉Map的時候key用的是item.name