微信小程序> 关于小程序的form表单提交,以及提交picker时的问题-小程序收集表为什么提交不了-小程序表单制作

关于小程序的form表单提交,以及提交picker时的问题-小程序收集表为什么提交不了-小程序表单制作

浏览量:3705 时间: 来源:编程的力量
最近在写小程序,发现了一些细节性的问题,在这里做一个记录,和大家一起学习。

1.1.先来说说picker吧,我是在写选择地址的时候遇到的问题。picker的第一个问题就是怎么在后台获取到提交的数据,我用的是this.data.xxxx[e.detail.value].xxxx

2.这是我的picker选择器,就不细说了,中间view是用来回显的,.name是我的对象集合里的一个属性,你们可以随便点,想要什么点什么,city呢可以解释为数组下标,可以在js里初始化一下。cityList是我后台返回的数据用setData给它的。

wxml:pickerclass="picker"name="id"bindchange="bindChange"value="{{city}}"range="{{cityList}}"range-key="name"view市:{{cityList[city].name}}/view/pickerjs:bindChange:function(e){cityName=this.data.cityList[e.detail.value].nameconsole.log(cityName)},this.data.集合[e.detail.value].所需要的属性这样,就可以获取到picker的值了

3.2.下面在说说form表单提交时的问题吧。第一做小程序表单时,会发现与web有很大不同。因为小程序表单提交之后,input里的数据没有消失,页面没有任何变化,如果你不打个输出语句,你都看不出表单到底有没有提交成功。这让我这样第一次写小程序的小白慌的一批,以为是哪里写错了。其实,哪里都没错,小程序就是这样。我是这样来处理这个问题的,用:

wx.navigateBack({delta:1})

4.可以返回上一层,1是返回上一层,2就是返回两层。这样成功之后,页面跳转回去。写到这里,觉得写的差不多了,但偏偏picker又出来搞事情。什么问题呢?就是虽然你提交了,页面也跳转了,input里的数据也消失了,但picker里选中的数据并没有消失,因为xxx=this.data.xxxx[e.detail.value].xxx.用了等号,xxx也就把数据存到变量里了,所以它是有值的。

5.我是这样来处理这个问题的:

success:function(e){provinceName=0,cityName=0,areaName=0console.log("成功");

6.没有错,就是表单提交成功以后,我把他们又重新初始化一下,这样再次添加的时候他们都是0

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎