收藏
回答

通过js给某些input赋值时,另外值发生改变的Input值会被恢复成默认

问题模块 框架类型 问题类型 终端类型 微信版本 基础库版本
框架 小程序 Bug 微信iOS客户端 7.0.8 2.0.0(没找到)

场景描述:

    页面上有两组input,一组为收货人信息(姓名,电话),另一组为发货人信息(姓名,电话,身份证号)。我们做了两个suggest功能来快速填入历史收发货人信息。

问题重现:

  1. 先用suggest功能填入收货人信息,此时recever_name和receiver_phone被赋值。

  2. 手工修改收货人姓名和手机号

  3. 使用suggest功能填入发货人信息。此时bug出现,收货人信息被重置为修改前的值


原因推测:

    当用户手动修改了某个input的值的时候,对应的value没有改变;此时用js改变data的某个值,小程序用data里的值对页面进行了重新渲染,手动改变过的input被恢复成了默认值。


代码如下:

if (that.data.suggestType == 'receiver') {

     that.setData({

       receiver_name: e.currentTarget.dataset.name,

       receiver_phone: e.currentTarget.dataset.phone,

       receive_customer_name_focus: false,

       suggestFocus: false,

     });

   } else {

     console.log('到这里了?');

     that.setData({

       senderName: e.currentTarget.dataset.name,

       senderPhone: e.currentTarget.dataset.phone,

       senderIdCard: e.currentTarget.dataset.id_card,

       customer_name_focus: false,

       suggestFocus: false,

     });

   }


最后一次编辑于  11-22
回答关注问题邀请回答
收藏

1 个回答

问题标签