当前位置: 首页 > news >正文

佛山企业网站制作哪家好wordpress注册登录界面

佛山企业网站制作哪家好,wordpress注册登录界面,wap网络,广告网站建设网站排名优化一、背景 最近在做一些东西的时候#xff0c;遇到一个需要Springmvc后台接收list类型数据的需求#xff0c;几经辗转才完美解决了这个问题#xff0c;今天记下来方便以后使用#xff0c;也分享给需要的小伙伴们~ 二、实现方式 实现方式一 前端页面 1 % page language遇到一个需要Springmvc后台接收list类型数据的需求几经辗转才完美解决了这个问题今天记下来方便以后使用也分享给需要的小伙伴们~ 二、实现方式 实现方式一 前端页面 1 % page languagejava contentTypetext/html; charsetUTF-82 pageEncodingUTF-8%3 !DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN http://www.w3.org/TR/html4/loose.dtd4 html5 head6 meta http-equivContent-Type contenttext/html; charsetUTF-87 title测试/title8 /head9 body 10 input typebutton namerequest value请求后台 stylewidth:200px;height:50px;background-color:red;margin-bottom:20px; 11 div namers/div 12 input typecheckbox namese value1hafiz.zhangbr/ 13 input typecheckbox namese value2jack.chenbr/ 14 input typecheckbox namese value3lili.wangbr/ 15 script typetext/javascript 16 17 $(input[namerequest]).click(function(){ 18 var data []; 19 $(input[namese]).each(function(){ 20 if($(this).prop(checked)) { 21 data.push($(this).val()); 22 } 23 }); 24 var json_data JSON.stringify(data); 25 $.ajax({ 26 type:post, 27 url:$.wap.url /test/index, 28 contentType:application/json, 29 data:json_data , 30 dataType:json, 31 success:function(data){ 32 var str; 33 for(var i 0; i data.length; i) { 34 str ;name data[i]; 35 } 36 $(div[namers]).html(str); 37 }, 38 error:function(){ 39 alert(出错啦); 40 } 41 }); 42 }); 43 /script 44 /body 45 /html 后台接收 1 package com.hafiz.www.controller;2 3 import java.util.ArrayList;4 import java.util.List;5 6 import org.springframework.stereotype.Controller;7 import org.springframework.web.bind.annotation.RequestBody;8 import org.springframework.web.bind.annotation.RequestMapping;9 import org.springframework.web.bind.annotation.RequestMethod; 10 import org.springframework.web.bind.annotation.ResponseBody; 11 12 Controller 13 RequestMapping(/test) 14 public class TestController { 15 RequestMapping(value /index, method RequestMethod.POST) 16 ResponseBody 17 public ListInteger test(RequestBody ArrayListInteger ids){ 18 System.out.println(List ids); 19 return ids; 20 } 21 } 注意这种方法只适用于POST方法提交(上面代码中标红的是必不可少的代码)如果使用get方法会出现如下图所示的错误 这是因为get方式的参数中的双引号会被编码导致传到后台的不再是json串格式所以解析出错。 实现方式二  前端页面 1 % page languagejava contentTypetext/html; charsetUTF-82 pageEncodingUTF-8%3 !DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN http://www.w3.org/TR/html4/loose.dtd4 html5 head6 meta http-equivContent-Type contenttext/html; charsetUTF-87 title测试/title8 /head9 body 10 input typebutton namerequest value请求后台 stylewidth:200px;height:50px;background-color:red;margin-bottom:20px; 11 div namers/div 12 input typecheckbox namese value1hafiz.zhangbr/ 13 input typecheckbox namese value2jack.chenbr/ 14 input typecheckbox namese value3lili.wangbr/ 15 script typetext/javascript 16 17 $(input[namerequest]).click(function(){ 18 var data []; 19 $(input[namese]).each(function(){ 20 if($(this).prop(checked)) { 21 data.push($(this).val()); 22 } 23 }); 24 $.ajax({ 25 type:get, 26 url:$.wap.url /test/index, 27 data:{datas:data},//或者data:{datas[]:data} 28 dataType:json, 29 success:function(data){ 30 var str; 31 for(var i 0; i data.length; i) { 32 str ;name data[i]; 33 } 34 $(div[namers]).html(str); 35 }, 36 error:function(){ 37 alert(出错啦); 38 } 39 }); 40 }); 41 /script 42 /body 43 /html 后台接收指定参数名必须以数组方式如RequestParam(datas[])   1).通过ArrayList接收 1 package com.hafiz.www.controller;2 3 import java.util.ArrayList;4 import java.util.List;5 6 import org.springframework.stereotype.Controller;7 import org.springframework.web.bind.annotation.RequestMapping;8 import org.springframework.web.bind.annotation.RequestMethod;9 import org.springframework.web.bind.annotation.RequestParam; 10 import org.springframework.web.bind.annotation.ResponseBody; 11 12 Controller 13 RequestMapping(/test) 14 public class TestController { 15 RequestMapping(value /index, method RequestMethod.GET) 16 ResponseBody 17 public List test(RequestParam(datas[]) ArrayListInteger ids){ 18 System.out.println(List ids); 19 return ids; 20 } 21 }   2).通过数组进行接收 1 package com.hafiz.www.controller;2 3 import java.util.ArrayList;4 import java.util.List;5 6 import org.springframework.stereotype.Controller;7 import org.springframework.web.bind.annotation.RequestMapping;8 import org.springframework.web.bind.annotation.RequestMethod;9 import org.springframework.web.bind.annotation.RequestParam; 10 import org.springframework.web.bind.annotation.ResponseBody; 11 12 Controller 13 RequestMapping(/test) 14 public class TestController { 15 RequestMapping(value /index, method RequestMethod.POST) 16 ResponseBody 17 public Integer[] test(RequestParam(datas[]) Integer[] ids){ 18 System.out.println(ids ids); 19 return ids; 20 } 21 } 注意   1.这种方式对于get和post方式的请求同样都适用....   2.以上两种实现方式传到后台的数据不能为null,否则会报Http 400错误。 实现方式三  前端页面 1 % page languagejava contentTypetext/html; charsetUTF-8 pageEncodingUTF-8 %2 !DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN http://www.w3.org/TR/html4/loose.dtd3 html4 head5 meta http-equivContent-Type contenttext/html; charsetUTF-86 title测试/title7 /head8 body9 input typebutton namerequest value请求后台 10 stylewidth:200px;height:50px;background-color:red;margin-bottom:20px; 11 div namers/div 12 input typecheckbox namese value1hafiz.zhangbr/ 13 input typecheckbox namese value2jack.chenbr/ 14 input typecheckbox namese value3lili.wangbr/ 15 script typeapplication/javascript srcjs/jquery-1.11.1.min.js/script 16 script typetext/javascript 17 18 $(input[namerequest]).click(function () { 19 var data []; 20 $(input[namese]).each(function () { 21 if ($(this).prop(checked)) { 22 data.push($(this).val()); 23 } 24 }); 25 $.ajax({ 26 type: post, 27 url: /test/index, 28 data: {datas: data.join()} 29 dataType: json, 30 success: function (data) { 31 var str ; 32 for (var i 0; i data.length; i) { 33 str ;name data[i]; 34 } 35 $(div[namers]).html(str); 36 }, 37 error: function () { 38 alert(出错啦); 39 } 40 }); 41 }); 42 /script 43 /body 44 /html 后端代码   1)通过数组接收 1 package com.hafiz.www.controller;2 3 import org.springframework.stereotype.Controller;4 import org.springframework.web.bind.annotation.RequestMapping;5 import org.springframework.web.bind.annotation.RequestMethod;6 import org.springframework.web.bind.annotation.RequestParam;7 import org.springframework.web.bind.annotation.ResponseBody;8 9 import java.util.ArrayList; 10 import java.util.List; 11 12 /** 13 * Desc:测试控制器 14 * Created by hafiz.zhang on 2017/7/2. 15 */ 16 Controller 17 RequestMapping(/test) 18 public class TestController { 19 RequestMapping(value /index, method RequestMethod.POST) 20 ResponseBody 21 public Integer[] test(RequestParam(datas) Integer[] ids) { 22 System.out.println(ids ids); 23 return ids; 24 } 25 }   2).通过List接收 package com.hafiz.www.controller;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import java.util.List;/*** Desc:测试控制器* Created by hafiz.zhang on 2017/7/2.*/ Controller RequestMapping(/test) public class TestController {RequestMapping(value /index, method RequestMethod.POST)ResponseBodypublic List test(RequestParam(datas) ListInteger ids) {System.out.println(ids ids);return ids;} } 这种方式即使没有选中任何复选框进行提交也不会报错   对于想要前端传自定义对象数组到后端以上的方式就不适用了那么解决办法是什么呢   ajax请求中设置contentType:application/json;charsetutf-8 ajax请求中设置data:JSON.stringify(dataList) 后端Controller种用RequestBody YourObject[] data进行接收并且只能用数组接收.   如果你有更好的实现方式希望可以拿来分享。。。。 三、总结 1.实现方式一只对post方法有效且比较繁琐不推荐 2.实现方式二要求后端接收的时候必须声明参数为数组但可以使用数组或者list进行接收参数如RequestParam(datas[])前端使用data:{datas:data}或data:{datas[]:data}都可以且post和get方法都适用。但是不能传空数组,限制也比较多也不太推荐。 3.实现方式三只需要前端传值的时候使用数组的join()方法为空数组也不会报错配置简单要求少且支持使用数组和list进行接收参数比较推荐  关于传递自定义对象的集合可以参考这篇文章https://blog.csdn.net/sweetgirl520/article/details/79127223转载于:https://www.cnblogs.com/hafiz/p/5498936.html
http://www.pierceye.com/news/898267/

相关文章:

  • 网站视频主持人制作网站开发 质量管理
  • 网站的外链建设计划石家庄市城乡建设部网站
  • 电子商务网站规划与建设论文电子商务营销方法
  • 宁波做网站费用电子商城开发网站开发
  • 太原市住房和城乡建设部网站免费的logo在线设计
  • 做it的在哪个网站找工作wordpress 幻燈片 插件
  • 湘潭做网站 i磐石网络博学网站建设公司
  • 揭阳市建设发展总公司网站自己做的视频网站如何赚钱
  • 泉州自助建站软件天眼查在线查询官网
  • 网站建设书模板校本教研网站建设方案
  • 经销商自己做网站合适吗彩虹网站建设
  • 网站新闻编辑怎么做网站开发人员 组织架构
  • 重庆网站seo诊断婚纱摄影网站模板下载
  • 老板合作网站开发宁波网站建设慕枫科技
  • 做外贸都有哪些好网站河北沙河市规划局或建设局网站
  • 网站设计建设维护专门做网站的app
  • 哈尔滨建站模板大全慈溪高端网站设计
  • 升阳广州做网站公司门户网站建设存在的问题和差距
  • 杭州建设行业网站做兼职网站
  • 连云港市城乡建设管理局网站wordpress怎么设置
  • 如何找做网站的公司网站建站哪家公司好
  • 网站建设性价比高珠海网站建设工程
  • 设计公司网站需要什么条件网站建设与管理课程代码
  • 局域网网站怎么做软件定制开发的发展前景
  • 门户网站关键词旅游网站开发报价单
  • 哪个网站做视频收益高社区服务呼叫系统 网站的建设
  • 网站是如何制作的工厂 电商网站建设
  • 展览设计网站有哪些南海网站智能推广
  • 贵阳做网站需要多少钱凡科网站建设完成下载下载器
  • 虚拟机上做钓鱼网站照片网站怎么做