微信小程序 表单Form实例详解(附源码)


Posted in Javascript onDecember 22, 2016

微信小程序 表单Form实例

表单Form的应用很广泛,我们可以利用form设计登录注册,也可以设计一种答题问卷的形式,今天主要讲一下form的使用

form表单,将组件内输入的"switch","input","checkbox","slider","radio","picker"的值进行提交,数据的格式为:name:value,所以表单中控件都需要添加name属性,否则找不到对应控件的值。其主要属性:

微信小程序 表单Form实例详解(附源码)

主要代码,创建一个form表单:

<!--pages/index/Component/FormM/FormM.wxml-->
<view class="viewTitle">
  <text class="view-Name">form表单</text>
  <view class="lineView"></view>
</view>
<!--这里用form,name=“nameName1”可以作为form的属性进行 
(e.detail.value.nameName1)调用,
form自带有提交和重置按钮,会自动获取表单中所有控件值的改变-->
<form class="page__bd" bindsubmit="formSubmit" bindreset="formReset">
  <view class="section section_gap">
   <view class="section__title">switch开关</view>
   <switch name="switch"/>
  </view>
  <view class="section section_gap">
   <view class="section__title">slider滑块</view>
   <slider value="50" name="slider" show-value ></slider>
  </view>
  <view class="section">
   <view class="section__title">input输入框</view>
   <input name="input" style="background-color: #FFFFFF" placeholder="请在这里输入" />
  </view>
  <view class="section section_gap">
   <view class="section__title">radio单选</view>
   <radio-group name="radio-group">
    <label><radio value="radio1"/>radio1</label>
    <label><radio value="radio2"/>radio2</label>
   </radio-group>
  </view>
  <view class="section section_gap">
   <view class="section__title">checkbox多选</view>
   <checkbox-group name="checkbox">
    <label><checkbox value="checkbox1"/>checkbox1</label>
    <label><checkbox value="checkbox2"/>checkbox2</label>
   </checkbox-group>
  </view>
  <view class="section">
   <view class="section__title">地区选择器</view>
   <picker name="areaPicker" bindchange="bindPickerChange" value="{{index}}" range="{{array}}">
    <view class="picker">
     当前选择:{{array[index]}}
    </view>
   </picker>
  </view>
  <view class="section">
   <view class="section__title">时间选择器</view>
   <picker name="timePicker" mode="time" value="{{time}}" start="09:01" end="21:01" bindchange="bindTimeChange">
    <view class="picker">
     当前选择: {{time}}
    </view>
   </picker>
  </view>
  <view class="section">
   <view class="section__title">日期选择器</view>
   <picker name="datePicker" mode="date" value="{{date}}" start="2015-09-01" end="2017-09-01" bindchange="bindDateChange">
    <view class="picker">
     当前选择: {{date}}
    </view>
   </picker>
  </view>
  <view class="btn-area">
   <button form-type="submit">Submit提交</button>
   <button form-type="reset">Reset重置</button>
  </view>
 </form>

如何获取form内部的控件的值,就需要用到form的相关属性,代码如下

// pages/index/Component/FormM/FormM.js
Page({
 //初始化数据
 data: {
  array: ['大中国', '美国', '巴西', '小日本'],
  index: 0,
  date: '2016-12-20',
  time: '11:19',
  allValue:''
 },
 //表单提交按钮
 formSubmit: function(e) {
  console.log('form发生了submit事件,携带数据为:', e.detail.value)
  this.setData({
   allValue:e.detail.value
  })
 },
 //表单重置按钮
 formReset: function(e) {
  console.log('form发生了reset事件,携带数据为:', e.detail.value)
  this.setData({
   allValue:''
  })
 },
 //---------------------与选择器相关的方法
 //地区选择
 bindPickerChange: function(e) {
  console.log('picker发送选择改变,携带值为', e.detail.value)
  this.setData({
   index: e.detail.value
  })
 },
 //日期选择
 bindDateChange: function(e) {
  this.setData({
   date: e.detail.value
  })
 },
 //时间选择
 bindTimeChange: function(e) {
  this.setData({
   time: e.detail.value
  })
 },


})

效果图:

微信小程序 表单Form实例详解(附源码)   微信小程序 表单Form实例详解(附源码)   微信小程序 表单Form实例详解(附源码)   微信小程序 表单Form实例详解(附源码)

输出表单中的结果值:

微信小程序 表单Form实例详解(附源码)

源码下载:http://xiazai.3water.com/201612/yuanma/WX-form-Demo4-master(3water.com).rar

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
ASP.NET jQuery 实例3 (在TextBox里面阻止复制、剪切和粘贴事件)
Jan 13 Javascript
js打开windows上的可执行文件示例
May 27 Javascript
javascript Slip.js实现整屏滑动的手机网页
Nov 25 Javascript
javascript实现起伏的水波背景效果
May 16 Javascript
全面解析DOM操作和jQuery实现选项移动操作代码分享
Jun 07 Javascript
JavaScript中Form表单技术汇总(推荐)
Jun 26 Javascript
JS获取IE版本号与HTML设置IE文档模式的方法
Oct 09 Javascript
用vue构建多页面应用的示例代码
Sep 20 Javascript
VueJs监听window.resize方法示例
Jan 17 Javascript
详解VS Code使用之Vue工程配置format代码格式化
Mar 20 Javascript
JS实现使用POST方式发送请求
Aug 30 Javascript
原生JS实现多条件筛选
Aug 19 Javascript
微信小程序 122100版本更新问题解决方案
Dec 22 #Javascript
JS闭包与延迟求值用法示例
Dec 22 #Javascript
jQuery实现两个select控件的互移操作
Dec 22 #Javascript
JS 调用微信扫一扫功能
Dec 22 #Javascript
Vue实现双向绑定的方法
Dec 22 #Javascript
JS实现物体带缓冲的间歇运动效果示例
Dec 22 #Javascript
Vue.js双向绑定实现原理详解
Dec 22 #Javascript
You might like
PHP一些有意思的小区别
2006/12/06 PHP
一个图形显示IP的PHP程序代码
2007/10/19 PHP
探讨各种PHP字符串函数的总结分析
2013/06/05 PHP
zf框架的registry(注册表)使用示例
2014/03/13 PHP
详解PHP归并排序的实现
2016/10/18 PHP
yii2使用gridView实现下拉列表筛选数据
2017/04/10 PHP
用js实现上传图片前的预览(TX的面试题)
2007/08/14 Javascript
浅析js绑定事件的常用方法
2016/05/15 Javascript
使用three.js 画渐变的直线
2016/06/05 Javascript
JS实现放大、缩小及拖拽图片的方法【可兼容IE、火狐】
2016/08/23 Javascript
JS识别浏览器类型(电脑浏览器和手机浏览器)
2016/11/18 Javascript
vue中appear的用法
2017/08/17 Javascript
在Vue组件上动态添加和删除属性方法
2018/02/23 Javascript
Angular 4.x+Ionic3踩坑之Ionic3.x pop反向传值详解
2018/03/13 Javascript
vue地区选择组件教程详解
2018/05/04 Javascript
使用jquery实现轮播图效果
2021/01/02 jQuery
Python Paramiko模块的安装与使用详解
2016/11/18 Python
Python实现KNN邻近算法
2021/01/28 Python
Python字典操作详细介绍及字典内建方法分享
2018/01/04 Python
Django migrations 默认目录修改的方法教程
2018/09/28 Python
对Python 3.5拼接列表的新语法详解
2018/11/08 Python
在python中pandas读文件,有中文字符的方法
2018/12/12 Python
Python通过2种方法输出带颜色字体
2020/03/02 Python
澳大利亚宠物食品和药物在线:Jumbo Pets
2018/03/24 全球购物
东方通信股份有限公司VC面试题
2014/08/27 面试题
查环查孕证明
2014/01/10 职场文书
2014年组织部工作总结
2014/11/14 职场文书
2014年骨干教师工作总结
2014/12/19 职场文书
邀请函怎么写
2015/01/30 职场文书
电影雷锋观后感
2015/06/10 职场文书
高二英语教学反思
2016/03/03 职场文书
探讨Java中的深浅拷贝问题
2021/06/26 Java/Android
微软Win11有哪些隐藏功能? windows11多个功能汇总
2021/11/21 数码科技
Sql Server 行数据的某列值想作为字段列显示的方法
2022/04/20 SQL Server
java获取一个文本文件的编码(格式)信息
2022/09/23 Java/Android