mathhater 2022-09-19 16:30 采纳率: 64.3%
浏览 74
已结题

微信小程序发起对服务器发起post请求中,请求体data数据中如何传递复选框的值

本人在服务器端有一个.php脚本
该脚本中有个复选框用来采集客户端的复选项如下

<input class="form-check-input" id='s1' type='checkbox' name='check[]' value=0 >
                 <label class="form-check-label" for="s2">140/120:</label><input class="form-check-input"id='s2'type='checkbox' name='check[]' value=2 >
                 <label class="form-check-label" for="s3">190/145:</label><input class="form-check-input"id='s3'type='checkbox' name='check[]' checked='checked' value=4 >
                <label class="form-check-label" for="s4">200/170:</label><input class="form-check-input"id='s4'type='checkbox' name='check[]' value=6 >
                <label class="form-check-label" for="s5">207/112:</label><input class="form-check-input"id='s5'type='checkbox' name='check[]' value=9 >
                <label class="form-check-label" for="s6">215/140:</label><input class="form-check-input"id='s6'type='checkbox' name='check[]' value=10 >
                <label class="form-check-label" for="s7">220/170:</label><input class="form-check-input"id='s7'type='checkbox' name='check[]' value=8 >
                <label class="form-check-label" for="s8">230/130:</label><input class="form-check-input"id='s8'type='checkbox' name='check[]' value=1 >
                <label class="form-check-label" for="s9">240/180:</label><input class="form-check-input"id='s9'type='checkbox' name='check[]' value=3 >
                 <label class="form-check-label" for="s10">300/200:</label><input class="form-check-input"id='s10'type='checkbox' name='check[]' value=5 >
                <label class="form-check-label" for="s11">318/140:</label><input class="form-check-input"id='s11'type='checkbox' name='check[]' value=7 >

当用户提交表达后,服务器端另外一个逻辑处理脚本接收复选框提交上来的值

<?php 
if($_POST)
$value=$_POST['check'];
?>

我现在想把这两个脚本接口开放给微信小程序
在微信小程序对应的页面.js脚本中有这么一个处理函数

getinfo(){

  wx.request({
          url: 'https://www.examples.com/moldarrange/moldarrange.php', // 仅为示例,并非真实的接口地址
          method: 'post',
          data: {
            moldx:1,
            moldy:1,
            productx:300,
            producty:200,
            gap:80,
            water:0,
            check[]:4,
          },
          header: {
            'content-type': 'application/x-www-form-urlencoded' // 默认值
          },
          success(res) {
        console.log(res.data)
          }
        })
}

小程序data对象里不知道如何填写复选框check[]用来给服务器上的脚本moldarrange.php来发送post请求
试过很多格式如 check[]:2,3,4 check:[2,3,4] check%5B%5D:2,3,4 等等,都报错,服务器脚本无法得到正确的复选框值,请教各位如何填写

  • 写回答

3条回答 默认 最新

  • 一把编程的菜刀 2022-09-19 16:55
    关注

    你应该转成josn字符串: check:JSON.stringify([1,2,3]),php再转成数组就可以了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月27日
  • 已采纳回答 9月19日
  • 创建了问题 9月19日

悬赏问题

  • ¥100 Acess连接SQL 数据库后 不能用中文筛选
  • ¥20 电脑拓展屏桌面被莫名遮挡
  • ¥20 ensp,用局域网解决
  • ¥15 Python语言实验
  • ¥15 我每周要在投影仪优酷上自动连续播放112场电影,我每一周遥控操作一次投影仪,并使得电影永远不重复播放,请问怎样操作好呢?有那么多电影看吗?
  • ¥20 电脑重启停留在grub界面,引导出错需修复
  • ¥15 matlab透明图叠加
  • ¥50 基于stm32l4系列 使用blunrg-ms的ble gatt 创建 hid 服务失败
  • ¥150 计算DC/DC变换器平均模型中的参数mu
  • ¥25 C语言代码,大家帮帮我