小程序中监听textarea或者input输入的值动态改变data中数组的对象的值

Page({
  data: {
    todoLists:[
      {
        detail:"",
        date:"",
        location:"",
        priority:"",
        remark:"",
        dateStatus:false,
        locationStatus:false,
        dateRepeat:false,
        completeStatus: false,
        currentInput:"",
      },
      {
        detail: "",
        date: "",
        location: "",
        priority: "",
        remark: "",
        dateStatus: false,
        locationStatus: false,
        dateRepeat: false,
        completeStatus: false,
        currentInput:"",
      }
    ],
  },
  getInput:function(e){
    let index = e.currentTarget.dataset.index;
    let currentInput = `todoLists[${index}].currentInput`;
    this.data.todoLists[index].currentInput = e.detail.value;
    this.setData({
      todoLists: this.data.todoLists
    })
    console.log(this.data.todoLists[index].currentInput) // 可以实时改变
  }
})
<textarea class="weui-textarea {{ item.completeStatus && item.completeStatus === true ? 'text-transparent' : '' }}" placeholder="请输入文本" bindinput="getInput" maxlength="1000" data-index="{{index}}" value="{{item.currentInput}}" auto-height auto-focus="true" />

小程序中监听textarea或者input输入的值动态改变data中数组的对象的值,不能通过setData设置数组对应索引的对象的值来改变,改变之后,能检测到改变,但是值为空。先通过赋值改变其中数组中的对象的值,然后重新设置数组。

参考链接:https://blog.csdn.net/chou_out_man/article/details/75575100


更多专业前端知识,请上 【猿2048】www.mk2048.com
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值