微信小程序bindinput与bindsubmit的区别实例分析


Posted in Javascript onApril 17, 2019

本文实例讲述了微信小程序bindinput与bindsubmit的区别。分享给大家供大家参考,具体如下:

实际上的话,bindinput还有bindsubmit是没有任何的可比性的,但是两者还是常常被人一起比较,为啥?

比如一个简单的搜索框,你是愿意选择使用bindinput还是使用bindsubmit?,虽然一个是表单,一个是文本输入框,但是两者都有一个共同点,就是可以去获取到用户的输入信息。这个时候,问题来了,区别在哪儿?

最简单的一段代码在下面:

<form bindsubmit='input1input'>
 <input name="input1" placeholder='这个是输入框' style='border:1rpx solid #000;'></input>
 <button form-type="submit">提交按钮</button>
</form>
<input bindinput='input2input' placeholder='这个是输入框' style='margin-top:200rpx;border:1rpx solid #000;'></input>
<button>提交按钮</button>
// pages/input/input.js
Page({
 data: { input1: "", input2: "" },
 input1input: function (e) {
  console.log(e);
  console.log(e.detail.value.input1)
 },
 input2input: function (e) {
  console.log(e);
  console.log(e.detail.value);
 }
})

甚是简单,那么问题来了,区别在哪儿?

当然,暂时的区别只有一个,就是console.log比较多,哈哈,开玩笑的。根据深圳那边客户的反应,说是使用input的时候,移动光标到一个地方后,输入一个文字,会重新移动光标的尾部,当然,不是上面的那些代码了,上面的代码是没问题的

有问题的是下面的代码:

// pages/input/input.js
Page({
 data: { input1: "this is the value for input1", input2: "this is the value for input2" },
 input1input: function (e) {
  console.log(e);
  console.log(e.detail.value.input1);
  this.setData({ input1: e.detail.value.input1 })
 },
 input2input: function (e) {
  console.log(e);
  console.log(e.detail.value);
  this.setData({ input2: e.detail.value })
 }
})
<form bindsubmit='input1input'>
 <input value='{{input1}}' name="input1" placeholder='这个是输入框' style='border:1rpx solid #000;height:100rpx;'></input>
 <button form-type="submit">提交按钮</button>
</form>
<input value="{{input2}}" bindinput='input2input' placeholder='这个是输入框' style='height:100rpx;margin-top:200rpx;border:1rpx solid #000;'></input>
<button>提交按钮</button>

其实原因很简单,就在一个地方,就是刷新界面的this.setData这而,为啥?因为你刷新后,value值修改,然后呢?

然后页面就刷新了,再然后呢?再然后就是因为你设置的是光标自动移动到最后一步,所以,最好的话是使用input的时候要小心点咯,当然我不是说使用input没有使用submit好,只是适应场景不同而已,比如没必要使用bindinput的时候去刷新界面,或则说我个人比较偏爱使用bindsbmit吧,。

希望本文所述对大家微信小程序开发有所帮助。

Javascript 相关文章推荐
在第一个input框内输入内容.textarea自动得到第一个文件框的值的javascript代码
Apr 20 Javascript
jQuery示例收集
Nov 05 Javascript
JavaScript实现梯形乘法表的方法
Apr 25 Javascript
jQuery实现模仿微博下拉滚动条加载数据效果
Dec 25 Javascript
jquery ui dialog替代confirm实例分析
Jan 25 Javascript
JS组件中bootstrap multiselect两大组件较量
Jan 26 Javascript
JavaScript 深层克隆对象详解及实例
Nov 03 Javascript
自定义类似于jQuery UI Selectable 的Vue指令v-selectable
Aug 23 jQuery
浅谈angular2路由预加载策略
Oct 04 Javascript
微信小程序基于本地缓存实现点赞功能的方法
Dec 18 Javascript
JS实现求字符串中出现最多次数的字符和次数示例
Jul 05 Javascript
Js利用正则表达式去除字符串的中括号
Nov 23 Javascript
vue 项目 iOS WKWebView 加载
Apr 17 #Javascript
Vue组件间通信方法总结(父子组件、兄弟组件及祖先后代组件间)
Apr 17 #Javascript
详解vue-cli+element-ui树形表格(多级表格折腾小计)
Apr 17 #Javascript
抖音上用记事本编写爱心小程序教程
Apr 17 #Javascript
基于JS实现web端录音与播放功能
Apr 17 #Javascript
vue-cli的build的文件夹下没有dev-server.js文件配置mock数据的方法
Apr 17 #Javascript
vue component 中引入less文件报错 Module build failed
Apr 17 #Javascript
You might like
常用表单验证类,有了这个,一般的验证就都齐了。
2006/12/06 PHP
php循环检测目录是否存在并创建(循环创建目录)
2011/01/06 PHP
PHP 使用MySQL管理Session的回调函数详解
2013/06/21 PHP
PHP中判断变量为空的几种方法分享
2013/08/26 PHP
在Win7 中为php扩展配置Xcache
2014/10/08 PHP
详解PHP中的序列化、反序列化操作
2017/03/21 PHP
laravel清除视图缓存的代码
2019/10/23 PHP
PHP7 新增功能
2021/03/09 PHP
JavaScript实现带缓冲效果的随屏滚动漂浮广告代码
2015/11/06 Javascript
Jquery中map函数的用法
2016/06/03 Javascript
JS 通过系统时间限定动态添加 select option的实例代码
2016/06/09 Javascript
bootstrap modal弹出框的垂直居中
2016/12/14 Javascript
用node和express连接mysql实现登录注册的实现代码
2017/07/05 Javascript
详解JavaScript的BUG和错误
2018/05/07 Javascript
TypeScript之调用栈的实现
2019/12/31 Javascript
vue 数据遍历筛选 过滤 排序的应用操作
2020/11/17 Javascript
Python+matplotlib实现华丽的文本框演示代码
2018/01/22 Python
对python中Matplotlib的坐标轴的坐标区间的设定实例讲解
2018/05/25 Python
python获取代码运行时间的实例代码
2018/06/11 Python
连接pandas以及数组转pandas的方法
2019/06/28 Python
python3的print()函数的用法图文讲解
2019/07/16 Python
django 实现celery动态设置周期任务执行时间
2019/11/19 Python
pycharm设置当前工作目录的操作(working directory)
2020/02/14 Python
灵活运用CSS3特性绘制简易版围棋效果
2016/09/28 HTML / CSS
eBay法国购物网站:eBay.fr
2017/10/21 全球购物
BNKR中国官网:带你感受澳洲领先潮流时尚
2018/08/21 全球购物
Feelunique美国:欧洲大型的在线美妆零售电商
2018/11/04 全球购物
shell程序中如何注释
2012/02/17 面试题
暑假实习求职信范文
2013/09/22 职场文书
离婚协议书怎么写
2014/09/12 职场文书
预备党员对照检查材料思想汇报
2014/09/24 职场文书
商品陈列协议书
2014/09/29 职场文书
安全教育培训心得体会
2016/01/15 职场文书
2019优秀干部竞聘演讲稿范文!
2019/07/02 职场文书
JavaScript与JQuery框架基础入门教程
2021/07/15 Javascript
zabbix如何添加监控主机和自定义监控项
2022/08/14 Servers