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

猜你喜欢

转载自blog.csdn.net/qq_42714869/article/details/83573150