表单提交数组元素时,HTML与JavaScript的区别

说明:本文为作者原创,欢迎大家转载,不过记得声明出处哦~

前言

在html页面提交表单数据时,如果该数据含有数组元素,如批量修改商品、批量删除图片等等,会提交一些数组元素,那么在html与JavaScript中应该如何编写这样的数组呢?

针对这个主题,这里假设一个批量删除图片的操作。

操作

HTML:

在html中,我们通过form表单来提交数据,表单标签主要有<input>等。这里用<input>标签来存储需要删除的图片的id,代码可以表现为:

<input type='hidden' name='ids[]' value='1'>
<input type='hidden' name='ids[]' value='2'>
<input type='hidden' name='ids[]' value='3'>

JavaScript:

在JavaScript中,我们通过ajax来提交表单数据。这里用jquery的ajax来处理请求,代码可以表现为:

$.ajax({
    url: "xxx",
    data: {
        ids: [1, 2, 3]
    }
    success: function(result) {
        console.log(result);
    }
});

同理,在微信小程序中,数组元素的表现形式是与JavaScript的ajax一致的。

后台响应(Java):

在JAVA后台处理响应时,使用HttpServletRequest request来接收数据。
这里有个区别,就是微信小程序的请求是与html、JavaScript的请求不同的,这里分两类来讲。

应对 html、JavaScript:
String [] ids_arr = request.getParameterValues("ids[]");
一步即可提取出数组元素。

应对 微信小程序:
String ids_str = request.getParameter("ids");
String [] ids_arr = ids_str.split(",");
先获取到的是string格式的以逗号分隔的id字符串集合,然后通过split操作将字符串转为数组。

Tips:

微信小程序在使用wx.request请求来发送数据时,最终发送给服务器的数据是 String 类型,如果传入的 data 不是 String 类型,会被转换成 String 。当 data 是数组类型时,将会被转换成以逗号分隔的 String 格式。具体可见:https://developers.weixin.qq.com/miniprogram/dev/api/wx.request.html中的“data 参数说明”一项。

 

-------------------------------------
作者:TGY——一个IT男的画意诗情
来源:CSDN 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值