微信小程序开发表单提交和取值教程

2018-06-29 15:55

摘要:我们可以直接给 input来实现表单提交功能,但是,如果有多个输入控件,我们不可能通过类方法来获取值

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

onUsernameInput : function(e) {

e.detail.value;

}

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

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

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

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

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

width=700

   注册

.js 代码

reg: function(e) {
console.log(e.detail.value);

wx.showToast({
title: e.detail.value[cb].join(,),
icon: success,
duration: 2000
});
}

重要说明

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

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

text:文本框

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

注意:number 是无小数点的,digit 是有小数点的。

表示密码框(个人认为太怪异,不如直接叫 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 中观察值,再来取。


推荐阅读:微信小程序如何申请注册教程    微信小程序开发教程

参与讨论

发表评论

扫码添加专属客服即可随时咨询

还可领取小程序推广攻略

咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部