您当前的位置:首页 > 知识百科 

微信小程序中form 表单提交和取值实例详解

时间:2023-07-01 14:05 阅读数:6人阅读

  微信小程序中form 表单提交,微信小程序怎么表单提交?小编特意准备了微信小程序中form 表单提交和取值实例详解的相关资料,欢迎来阅读,有需要的朋友可以参考下。

  微信小程序中form 表单提交和取值实例详解

  我们知道,如果我们直接给 input 添加 bindinput,比如:,那么可以在 onUsernameInput 中直接使用 e.detail.value,即:

  

  但是,如果有多个输入控件,我们不可能为每个控件添加 bindinput、bindchange 这类方法来获取值。我们得这样做:

  第一步、添加 from 控件,并为其指定 bindsubmit 属*值。

  第二步、添加输入控件到 form 中,并为其指定 name 属*值。

  第三步、添加 button 控件,并为其指定 form-type="submit"。

  第四步、在 js 中取值时,用 e.detail.value.xxx 或 e.detail.value["xxx"],其中 xxx 为 name 属*值。

  .wxml 代码

  .js 代码

  

  重要说明

  微信小程序的 input 有个属*叫 type,这个 type 有几个可选值:

  text:不必解释

  number:数字键盘(无小数点)

  idcard:数字键盘(无小数点、有个 X 键)

  digit:数字键盘(有小数点)

  注意:number 是无小数点的,digit 是有小数点的。我严重怀疑这是个 BUG。

  表示密码框(个人认为太怪异,不如直接叫 password 标签的好)。

  “羽毛球”那一项,我们是故意写作 checked="false" 的,我们试图使之初始不选中,但是不如我们愿,它却选中了,这和 HTML 一样,并不认 checked 属*值,只认有没有这个标记。不过如果我们使用 {{}} 则不一样,比如“排球”一项,选中与否就受 data.checked 的影响。

  input 的取值如前面所述,用 e.detail.value.xxx 或 e.detail.value["xxx"],其中 xxx 为 name 属*。

  checkbox 的取值也是类似 input,不过 xxx 为 checkbox-group 的 name,取出来的值是数组,由选中项的 value 组成,比如选中了“乒乓球”、“排球”,结果就是:["1", "3"]。特别说明,这个顺序与我们选择的先后有关,比如我们先选择“排球”,再选择“乒乓球”,结果就是["3", "1"]。

  radio 的取值和 input 一样,返回的是选中的那一项的 value,没有选中项就是 ""。

  如果不知道值类型,也可用 console.log(e.detail.value); 将所有值输出来,然后在调试 Console 中观察值,再来取。

  感谢阅读微信小程序中form 表单提交和取值实例详解的全部内容,希望能帮助到大家,更多小程序、小程序资讯请关注微小乔网站。

  相关推荐:

  最实用的微信小程序分享朋友圈的技巧

  微信小程序分享到朋友圈方法 微信小程序可以分享朋友圈?  

    微信小程序是什么?微信小程序有什么优势?