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

  介绍

小编给大家分享一下微信小程序中textarea的简易解决方案,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!

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

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

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

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

wxml文件代码:

& lt; form  bindsubmit=癳vaSubmit"比;   ,,& lt; textarea  name=癳vaContent",最大长度=?00“,value=https://www.yisu.com/zixun/{{evaContent}}”class=皐eui-textarea”占位符="填写内容(12 - 500字)" bindblur=" charChange "/>   提交>

js文件代码:

var  app =, getApp ();   页面({   ,数据:{   ,,evaContent ,:, & # 39; & # 39;   },   ,onLoad:函数(){   },   ,onReady:函数(){//才能,页面渲染完成   },   ,昂秀:函数(){//才能,页面显示   },   ,onHide:函数(){//才能,页面隐藏   },   ,onUnload:函数(){//才能,页面关闭   },   ,//事件   ,textBlur:函数(e) {   ,,如果(e.detail&, e.detail.value.length> 0) {   ,,,如果(e.detail.value.length<12 | | e.detail.value.length> 500) {   ,,,,//app.func.showToast(& # 39;内容为12 - 500个字符& # 39;,& # 39;加载# 39;,1200);   还有,,,}{   ,,,,this.setData ({   ,,,,,,evaContent : e.detail.value   ,,,,});   ,,,}   其他,,}{   ,,,this.setData ({   ,,,,,evaContent :, & # 39; & # 39;   ,,,});   ,,,evaData.evaContent =, & # 39; & # 39;;   ,,,app.func.showToast(& # 39;请输入投诉内容& # 39;,& # 39;加载# 39;,1200);   ,,}   },   ,//提交事件   ,evaSubmit:函数(eee) {,,   var 才能;that =,;//才能提交(自定义的得到方法)   app.func.req才能(& # 39;http://localhost: 1111/ffeva/投诉?内容=& # 39;& # 39;+ this.data.evaContent),得到函数(res) {   ,,,,,console.log (res);   ,,,,,如果(res.result===& # 39; 1 & # 39;) {   ,,,,,,//跳转到首页   ,,,,,,app.func.showToast(& # 39;提交成功& # 39;,& # 39;加载# 39;,1200);   ,,,,,其他}{   ,,,,,,app.func.showToast(& # 39;提交失败& # 39;,& # 39;加载# 39;,1200);   ,,,,,}   ,,});   ,}   })

缺点:

这样操作后,功能就有缺陷,例如,无法即时获取用户文本框输入字符个数。

看完了这篇文章,相信你对“微信小程序中textarea的简易解决方案”有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

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