前台序列化传过来的值,后台获取之后封装到map当中,让后在转化成json格式,最后在把json里面的参数里面的某一个值进行分割,最后在存到json格式的数据中去。
一,html脚本
<script type="text/javascript">
$(function() {
$(".btn-submit").click(function() {
var url = '${rc.contextPath}/wxFfanApply.htm?method=save';
var param = $("#submitForm").serialize();
$.ajax({
url: url,
type: 'POST',
dataType: 'json',
data: param,
async: false,
success: function(data){
if ("000" == data.code) {
alert("保存成功");
var url = '${rc.contextPath}/wxFfanApply.htm?method=preToMain';
document.getElementById('submitForm').action = url;
document.getElementById('submitForm').submit();
} else {
alert("保存出现异常,请重试");
}
}
});
});
});
</script>
<body>
<div class="page-upload">
<form id="submitForm" action="" method="post">
<input type="hidden" name="wxOpenId" value="${wxOpenId}"/>
<input type="hidden" name="applyId" value="${applyId}"/>
<input type="hidden" name="wxModuleType" value="${wxModuleType}"/>
<input type="hidden" name="fssId" id="fssId" />
<input type="hidden" name="originalFilename" id="originalFilename" />
<input type="hidden" name="imageType" id="imageType" />
<input type="hidden" name="companyType" id="companyType" />
<input type="button" class="btn-upload bg-business-license" name="yushow" id="yushow" value="点击上传营业执照" onclick="uploadBtn();">
<input type="file" name="upload" style="display:none;" onchange="previewImg(this);" id="upload" accept="image/*"/>
<ul class="info-list">
<li class="info-list-li">
<label class="lable-with-bg">注册号/信用代码</label>
<div class="li-right">
<input type="text" class="input-before-btn" placeholder="扫码可自动填充" name="businessRegno" value="${orderParam.businessRegno!}"/>
<button class="btn-scan"></button>
</div>
</li>
<li class="info-list-li">
<label>企业名称</label>
<input type="text" placeholder="请填写营业执照上的名称" name="merchantName" value="${orderParam.merchantName!}"/>
</li>
<li class="info-list-li">
<label>企业类型</label>
<div id="trigger1" >请选择</div>
</li>
<li class="info-list-li">
<label>法人/负责人名称</label>
<input type="text" placeholder="请填执照上负责人名称" name="legalName" value="${orderParam.legalName!}"/>
</li>
<li class="info-list-li">
<label>经营范围</label>
<input type="text" placeholder="请填执照上的经营范围" name="businessScope" value="${orderParam.businessScope!}"/>
</li>
<li class="info-list-li">
<label>注册地址</label>
<input type='text' id='sel_city' name="selCity"placeholder='请选择' />
</li>
<li class="info-list-li">
<label>详细地址</label>
<input type="text" placeholder="与营业执照地址一致" name="address" value="${orderParam.address!}"/>
</li>
<li class="info-list-li">
<label>有效期始</label>
<input id="startDate" name="startDate" class="select" placeholder="请选择开始日期"/>
</li>
<li class="info-list-li">
<label>有效期止</label>
<input id="endDate" name="endDate" class="select" placeholder="请选择开始日期"/>
</li>
<li class="info-list-li">
<label>三证合一</label>
<div class="li-right">
<div class="slide-block">
<div class="slide-block-ball"></div>
<input type="hidden" id="isUniformSocialCredit" name="isUniformSocialCredit" value=""/>
</div>
</div>
</li>
</ul>
<div class="btn-wrapper">
<button class="btn-submit">保存</button>
</div>
</form>
</div>
二,java代码
2.1,代码一
public void save(HttpServletRequest request, HttpServletResponse response) {
logger.info("save info begin...");
Map<String, Object> result = new HashMap<String, Object>();
try {
String wxOpenId = request.getParameter("wxOpenId");
String applyId = request.getParameter("applyId");
String wxModuleType = request.getParameter("wxModuleType");
if (StringUtil.isEmpty(wxOpenId) || StringUtil.isEmpty(applyId)
|| StringUtil.isEmpty(wxModuleType)) {
result.put("code", "001");
result.put("desc", "必填参数为空");
super.toJson(result, response);
return;
}
// 获取request里的所有参数,作为orderParam
String paramJson = packageOrderParam(request);
}
2.2,代码二
protected String packageOrderParam(HttpServletRequest request)
throws Exception {
Map<String, Object> paramMap = getParameterMap(request);
String selCity = request.getParameter("selCity");
if(StringUtil.isNotEmpty(selCity)){
String [] arr = selCity.split("\\s+");
String province=null;
String city=null;
String country=null;
for (int i = 0; i < arr.length; i++) {
switch (i) {
case 0:
province = arr[i];
break;
case 1:
city = arr[i];
break;
case 2:
country= arr[i];
break;
default:
break;
}
}
paramMap.put("province", province);
paramMap.put("city", city);
paramMap.put("country", country);
}
return JsonUtils.map2Json(paramMap);
}
2.3,代码三
@SuppressWarnings("unchecked")
public Map<String, Object> getParameterMap(HttpServletRequest request) {
Map<String, Object> resultMap = new HashMap<String, Object>();
Map<String, String[]> map = request.getParameterMap();
Set<Map.Entry<String, String[]>> set = map.entrySet();
Iterator<Map.Entry<String, String[]>> it = set.iterator();
while (it.hasNext()) {
Map.Entry<String, String[]> entry = (Map.Entry<String, String[]>) it.next();
for (String v : (String[]) entry.getValue()) {
resultMap.put(entry.getKey(), v);
}
}
return resultMap;
}
前台序列化传过来的值,后台获取之后封装到map当中,让后在转化成json格式,最后在把json里面的参数里面的某一个值进行分割,最后在存到json格式的数据中去。的更多相关文章
- VUE 直接通过JS 修改html对象的值导致没有更新到数据中去
业务场景 我们在使用vue 编写 代码时,我们有一个 多行文本框控件,希望在页面点击一个按钮 在 文本框焦点位置插入一个 {pk}的数据. 发现插入 这个数据后,这个数据并没有同步到 数据中,但是直接 ...
- 关于PHP参数的引用传递和值传递
如果希望编写一个名为increment()的函数来增加一个变量的值,我们可能会按如下方式编写这个函数: 这段代码是没有用的.下面测试代码的输出结果是“10”. $value 的内容没有被修改.这要归因 ...
- .net后台获取DataTable数据,转换成json数组后传递到前台,通过jquery去操作json数据
一,后台获取json数据 protected void Page_Load(object sender, EventArgs e){ DataTable dt = DBhepler.GetDataT ...
- Hbuilder app开发,使用mui.ajax和服务器交互,后台获取不到值,显示null的解决方法
先上一个能用的js代码: function login() { var uname=document.getElementById("username").value.trim() ...
- javaWeb - 2 — ajax、json — 最后附:后台获取前端中的input type = "file"中的信息 — 更新完毕
1.ajax是什么? 面向百度百科一下就知道了,这里就简单提炼一下 Ajax即Asynchronous Javascript And XML(异步JavaScript和XML).当然其实我们学的应该叫 ...
- ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案 try.dot.net 的正确使用姿势 .Net NPOI 根据excel模板导出excel、直接生成excel .Net NPOI 上传excel文件、提交后台获取excel里的数据
ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案 ASP.NET Core 从2.2版本开始,采用了一个新的名为Endpoint的路由方案,与原来的方案在使用上差别不 ...
- js前台传数组,java后台接收转list,前后台用正则校验
前台,传参数时,将数组对象转换成json串,后台java收到后用 JSONArray.fromObject 转成集合. 前台js:var params = {"FileNameList&qu ...
- .net后台获取HTML中select元素选中的值
前台: <select id="Province" name="Province" class="select"></se ...
- 使用JQuery结合HIghcharts实现从后台获取JSON实时刷新图表
项目做了一个报表,可以实时的观察呼叫中心的电话访问量,之前的版本是使用JFreechart做的,使用一段时间后出现内存溢出,服务器的内存使用量会变得很大,所以改用Ajax前台加载数据的方式实现实时报表 ...
随机推荐
- BZOJ 2959: 长跑 [lct 双连通分量 并查集]
2959: 长跑 题意:字词加入边,修改点权,询问两点间走一条路径的最大点权和.不一定是树 不是树
- BZOJ 1998: [Hnoi2010]Fsk物品调度 [置换群 并查集]
传送门 流水线上有n个位置,从0到n-1依次编号,一开始0号位置空,其它的位置i上有编号为i的盒子.Lostmonkey要按照以下规则重新排列这些盒子. 规则由5个数描述,q,p,m,d,s,s表示空 ...
- 闭包和es6实现循环绑定li输出固定索引值
首先我们需要一个html结构 <div > <ul> <li>a</li> <li>a</li> <li>a< ...
- 关于node的基础理论,书上看来的
最近看了一本书,说了一些Node.js的东西,现在来记录一下,让自己记得更牢靠一点. 在书上,是这样介绍的:Node.js模型是源于Ruby的Event Machine 和 Python的Twiste ...
- ConcurrenHashMap源码分析(二)
本篇博客的目录: 一:put方法源码 二:get方法源码 三:rehash的过程 四:总结 一:put方法的源码 首先,我们来看一下segment内部类中put方法的源码,这个方法它是segment片 ...
- PHPUnit简介及使用
一.PHPUnit是什么? 1.它是一款轻量级的PHP测试框架,地址:http://www.phpunit.cn 2.手册:http://www.phpunit.cn/manual/5.7/zh_cn ...
- NFS工作原理
很多同学都知道NFS的使用场景,也知道如何配置和使用,但对NFS的工作原理了解的很少. NFS是C/S模式,首先要有一台服务端跑NFS服务,然后各个客户端直接挂载共享目录使用.NFS服务本身不会监听端 ...
- CENTOS6.6下mysql MMM架构搭建
本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuirong.cn MMM(Master-Master replication mana ...
- Java中从键盘输入的三种方法
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...
- 项目构建工具Maven