標籤:function close pos .com table .ajax 選擇 shift trim
jsp頁面傳遞對象數組到背景需求
JSP:
1 //儲存 2 $("#submitBtn").click(function(){ 3 var flag = true; 4 var eachflag = true; 5 var len = $(".restTable tbody").find("tr").length; 6 var arr = new Array(); 7 if(len != 0){ 8 var trindex = 0; 9 $(".financialTable tbody tr").each(function(){ 10 if(!eachflag){ 11 return; 12 } 13 trindex++; 14 var chargeuser = new Object(); 15 if($(this).find(".name").val().trim()==‘‘){ 16 layer.tips("請填寫主要負責人姓名", $(".financialTable #tr_"+trindex+" .name"),{time:1000}); 17 flag = false; 18 eachflag = false; 19 return ; 20 }else{ 21 chargeuser.join_user = $(this).find(".name").val().trim(); 22 } 23 if($.trim($(this).find(".sex").val())==‘‘){ 24 layer.tips("請選擇主要負責人性別!", $(".financialTable #tr_"+trindex+" .sex"),{time:1000}); 25 flag = false; 26 eachflag = false; 27 return; 28 }else{ 29 chargeuser.sex = $(this).find(".sex").val()=="男"?0:1; 30 } 31 if($.trim($(this).find(".phone").val())==‘‘){ 32 layer.tips("請填寫主要負責人電話", $(".financialTable #tr_"+trindex+" .phone"),{time:1000}); 33 flag = false; 34 eachflag = false; 35 return; 36 }else{ 37 if(! (/^1[3|4|5|7|8|9][0-9]\d{8}$/.test($(this).find(".phone").val().trim()))){ 38 layer.tips("請輸入正確的電話", $(".financialTable #tr_"+trindex+" .phone"),{time:1000}); 39 flag = false; 40 eachflag = false; 41 return; 42 }else{ 43 chargeuser.phone = $(this).find(".phone").val().trim(); 44 } 45 } 46 //身份證非必輸項 47 if($(this).find(".card").val().trim() !=‘‘){ 48 var reg = /(^\d{18}$)|(^\d{17}(\d|X|x)$)/; 49 if (!reg.test($(this).find(".card").val().trim())) { 50 layer.tips("請輸入正確的社會安全號碼碼", $(".financialTable #tr_"+trindex+" .card"),{time:1000}); 51 flag = false; 52 eachflag = false; 53 return; 54 } 55 } 56 57 var id_card; 58 if($(this).find(".card").val().trim() == ‘‘){ 59 chargeuser.id_card = id_card; 60 }else{ 61 chargeuser.id_card = $(this).find(".card").val().trim(); 62 } 63 var postal_address; 64 if($(this).find(".address").val().trim() == ‘‘){ 65 chargeuser.postal_address = postal_address; 66 }else{ 67 chargeuser.postal_address = $(this).find(".address").val().trim(); 68 } 69 //chargeuser.memo = $(this).find(".memo").val().trim(); 70 var memo; 71 if($(this).find(".memo").val().trim() == ‘‘){ 72 chargeuser.memo = memo; 73 }else{ 74 chargeuser.memo = $(this).find(".memo").val().trim(); 75 } 76 chargeuser.pk_project_vendor = pk; 77 arr.push(chargeuser) 78 }) 79 } 80 if(!flag){ 81 return; 82 } 83 $.ajax({ 84 url:"${ctp}/basic_project/vendor/chargeuser.json", 85 type:"post", 86 dataType:"json", 87 data:{‘arr‘:JSON.stringify(arr), 88 ‘pk_project_vendor‘:pk, 89 ‘uuid‘:uuid, 90 ‘pkold‘:pkold 91 }, 92 async:false, 93 traditional: true, 94 success:function(result){ 95 if(result.success){ 96 layer.msg(result.msg, {time : 1000}, function() { 97 top.layer.close(layerIndex); 98 }); 99 }else{100 layer.alert(result.msg,{shift:2,closeBtn:false},function() {101 top.layer.close(layerIndex);102 });103 }104 flag = true;105 eachflag = true;106 }107 })108 })
jsp頁面關鍵有三處:
1、定義一個數組:var arr = new Array();
2、定義一個對象,并迭代添加對象屬性,最後push進數組
var chargeuser = new Object();
chargeuser.join_user = $(".financialTable .name").val();
chargeuser.sex = $(".financialTable .sex").val()=="男"?0:1;//資料庫存的是int類型
chargeuser.phone = $(".financialTable .phone").val();
chargeuser.id_card = $(".financialTable .card").val();
chargeuser.postal_address = $(".financialTable .address").val();
chargeuser.memo = $(".financialTable .memo").val();
arr.push(chargeuser);
3、提交時轉換數組對象:data:{‘arr‘:JSON.stringify(arr)},
後台java接收:
jsp傳Array數組到後台