对于form表单的提交的问题

一、背景
最近遇到用form表单提交数据的时候遇到一个问题,在form里面存在一些非input的数据也需要传到后台。
如:省市区联动
其中的一部分代码:在这里插入图片描述
(这么写原因是因为用select写的话第一次点击是无法显示内容)
其他input的代码
在这里插入图片描述
这些通过input输入的数据一个name就可以传到后台,那么问题就来了,怎么把这些非input和input的数据一次性全部传到后台呢
二、解决方法
肯定不可能一键点击就可以传输的那么简单,只能通过js用ajax进行表单传输数据,数据用json格式。
在这里插入图片描述
我们也知道这些通过input的数据js(JQ)可以通过KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲form的id").seria…("#form的id").serialize()数据是怎么样的。在这里插入图片描述
这里可以看到这其实就是get提交方式的格式,由于没有直接写好的json转换函数,所以我们需要自己封装一个。
这里我们需要用到js的replace函数
在这里插入图片描述
第一个参数其实就正则匹配,我也不懂,第二个为替换的字符。总之网上搜索到答案为
function transformationJson(data){
data=data.replace(/&/g,"","");
data=data.replace(/=/g,"":"");
data="{""+data+""}";
return data;
}
测试结果为:
在这里插入图片描述
中文发生乱码了,这个可以用在这里插入图片描述
结果:
在这里插入图片描述
那么后台结果
在这里插入图片描述
尴尬为什么为null,我猜测因为这里
在这里插入图片描述
这里并不是一个json对象而是string,不妨测试一下
在这里插入图片描述
测试结果:
在这里插入图片描述
所以我们使用如下方法转换成json对象
在这里插入图片描述
后台结果:
在这里插入图片描述
剩下的非input的数据可以在封装的方法里面拼接转换
在这里插入图片描述
结果:
在这里插入图片描述
成功把input和非input的数据全部传入后台

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值