微信小程序 textarea 详解及简单使用方法


Posted in Javascript onDecember 05, 2016

微信小程序 textarea 简易解决方案

微信小程序中textarea没有bindchange事件,所以无法在输入时给变量赋值。

虽然可以使用bindblur事件,但是绑定bindblur事件,如果再点击按钮,则先执行完按钮事件后,再去执行bindblur事件,所以在js文件取不到输入值,

解决方法:结合from表单,textarea文本框输入后,再去点击提交按钮,这时会先执行textarea事件(获取文本框输入内容),再去执行数据提交,这样问题就解决了

wxml文件代码:

<form bindsubmit="evaSubmit">
   <textarea name="evaContent" maxlength="500" value="{{evaContent}}" class="weui-textarea" placeholder="填写内容(12-500字)"bindblur="charChange" />     
   <button formType="submit" disabled="{{subdisabled}}" class="weui-btn mini-btn" type="primary" size="mini">提交</button>
 </form>

js文件代码:

var app = getApp();
Page({
 data:{
   evaContent  : ''
 },
 onLoad:function(){
 },
 onReady:function(){
  // 页面渲染完成
 },
 onShow:function(){
  // 页面显示
 },
 onHide:function(){
  // 页面隐藏
 },
 onUnload:function(){
  // 页面关闭
 },
 //事件
 textBlur: function(e){
   if(e.detail&&e.detail.value.length>0){
    if(e.detail.value.length<12||e.detail.value.length>500){
     //app.func.showToast('内容为12-500个字符','loading',1200);
    }else{
     this.setData({
       evaContent : e.detail.value
     });
    }
   }else{
    this.setData({
      evaContent : ''
    });
    evaData.evaContent = '';
    app.func.showToast('请输入投诉内容','loading',1200);
   }
 },
 //提交事件
 evaSubmit:function(eee){  
  var that = this;
  //提交(自定义的get方法)
  app.func.req('http://localhost:1111/ffeva/complaint?content=''+this.data.evaContent),get,function(res){
      console.log(res);
      if(res.result==='1'){
       //跳转到首页
       app.func.showToast('提交成功','loading',1200);
      }else{
       app.func.showToast('提交失败','loading',1200);
      }
  });
 }
})

 缺点:

这样操作后,功能就有缺陷。例如,无法即时获取用户文本框输入字符个数,如果有更好的解决方法,希望能学习一下!

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

Javascript 相关文章推荐
如何获取JQUERY AJAX返回的JSON结果集实现代码
Dec 10 Javascript
ECMAScript6的新特性箭头函数(Arrow Function)详细介绍
Jun 07 Javascript
JS中解决谷歌浏览器记住密码输入框颜色改变功能
Feb 13 Javascript
几行js代码实现自适应
Feb 24 Javascript
vue2利用Bus.js如何实现非父子组件通信详解
Aug 25 Javascript
jQuery 1.9版本以上的浏览器判断方法代码分享
Aug 28 jQuery
vue使用element-ui的el-input监听不了回车事件的解决方法
Jan 12 Javascript
vue路由跳转传参数的方法
May 06 Javascript
解决Layui中templet中a的onclick参数传递的问题
Sep 20 Javascript
vue导入.md文件的步骤(markdown转HTML)
Dec 31 Vue.js
详解javascript脚本何时会被执行
Feb 05 Javascript
vue实现可拖拽的dialog弹框
May 13 Vue.js
解析Javascript单例模式概念与实例
Dec 05 #Javascript
微信公众号  提示:Unauthorized API function 问题解决方法
Dec 05 #Javascript
深入理解jQuery()方法的构建原理
Dec 05 #Javascript
jQuery控制控件文本的长度的操作方法
Dec 05 #Javascript
浅析Ajax语法
Dec 05 #Javascript
jQuery的事件预绑定
Dec 05 #Javascript
微信小程序 UI布局常用技巧整理总结
Dec 05 #Javascript
You might like
PHP设计模式之迭代器模式的深入解析
2013/06/13 PHP
jquery+php实现导出datatables插件数据到excel的方法
2015/07/06 PHP
yii实现使用CUploadedFile上传文件的方法
2015/12/28 PHP
JavaScript实现统计文本框Textarea字数增强用户体验
2012/12/21 Javascript
js如何取消事件冒泡
2013/09/23 Javascript
jQuery添加/改变/移除CSS类及判断是否已经存在CSS
2014/08/20 Javascript
控制台报错object is not a function的解决方法
2014/08/24 Javascript
javascript中的previousSibling和nextSibling的正确用法
2015/09/16 Javascript
js为什么不能正确处理小数运算?
2015/12/29 Javascript
JavaScript实现iframe自动高度调整和不同主域名跨域
2016/02/27 Javascript
浅谈javascript基础之客户端事件驱动
2016/06/10 Javascript
node.js平台下利用cookie实现记住密码登陆(Express+Ejs+Mysql)
2017/04/26 Javascript
使用JavaScript开发跨平台的桌面应用详解
2017/07/27 Javascript
JS鼠标3次点击事件实现代码及扩展思路
2017/09/12 Javascript
详解使用路由延迟加载 Angular 模块
2017/10/12 Javascript
Angular学习笔记之集成三方UI框架、控件的示例
2018/03/23 Javascript
JavaScript中常用的简洁高级技巧总结
2019/03/10 Javascript
关于vue路由缓存清除在main.js中的设置
2019/11/06 Javascript
vue实现登录、注册、退出、跳转等功能
2020/12/23 Vue.js
python生成IP段的方法
2015/07/07 Python
python操作字典类型的常用方法(推荐)
2016/05/16 Python
Django分页查询并返回jsons数据(中文乱码解决方法)
2018/08/02 Python
在pyqt5中QLineEdit里面的内容回车发送的实例
2019/06/21 Python
python修改字典键(key)的方法
2019/08/05 Python
使用python 对验证码图片进行降噪处理
2019/12/18 Python
python打印异常信息的两种实现方式
2019/12/24 Python
澳大利亚Mocha官方网站:包、钱包、珠宝和配饰
2019/07/18 全球购物
党员自我评价分享
2013/12/13 职场文书
食品安全工作方案
2014/05/07 职场文书
计算机科学技术自荐信
2014/06/12 职场文书
预备党员学习十八届三中全会精神思想汇报
2014/09/13 职场文书
纪念九一八事变演讲稿:牢记九一八,屈辱怎能忘
2014/09/14 职场文书
关于安全的广播稿
2014/10/23 职场文书
垂直极限观后感
2015/06/08 职场文书
纪检部部长竞选稿
2015/11/21 职场文书
react 路由Link配置详解
2021/11/11 Javascript