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

浮生如梦梦若浮生 2016-12-08 11:44:56
微信小程序中textarea没有bindchange事件,所以无法在输入时给变量赋值。
虽然可以使用bindblur事件,但是绑定bindblur事件,如果再点击按钮,则先执行完按钮事件后,再去执行bindblur事件,所以在js文件取不到输入值,
解决方法:结合from表单,textarea文本框输入后,再去点击提交按钮,这时会先执行textarea事件(获取文本框输入内容),,结合人textarea的另一个失去焦点的方法呢 就可以解决了,
wxml代码:
<form bindsubmit="formSubmit" >
<view class="section">
<textarea bindblur="bindTextAreaBlur" auto-height placeholder="请输入内容" value="{{ceshi}}" />
<input name="input" placeholder="please input here" />
</view>
<view class="btn-area">
<button formType="submit">提交</button>
</view>
</form>
<view>{{ceshis}}</view>
<view>{{ceshidd}}</view>
以下是js的代码:
Page({
data: {
height: 20,
focus: false,
ceshi:''
},
bindTextAreaBlur: function(e) {
this.setData({
ceshi:e.detail.value
})

},
formSubmit: function(e) {

this.setData({
ceshis:this.data.ceshi,
ceshidd:e.detail.value.input
})

}

})
另外,这个方法还是有弊端的,如果各位,有什么更好的办法,或者想讨论以下的,可以扫描以下的二维码
微信小程序中用form提交textarea时无法获取数据的解决办法
...全文
3565 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_35341895 2017-07-24
  • 打赏
  • 举报
回复
有bindinput事件的。

20,398

社区成员

发帖
与我相关
我的任务
社区描述
“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
phpphpstorm 技术论坛(原bbs)
社区管理员
  • 开源资源社区
  • phpstory
  • xuzuning
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧