收藏
回答

输入框值清不掉?






值已经没了,输入框还显示有值,在输入框还有焦点的时候,通过发送按钮清空输入框值,这种情况就比较频繁出现,在真机调试模式下这种情况就基本不会复现,在去点击发送按钮时会触发bininput事件,但是很显然应该是先触发了input事件,然后才会点击发送按钮,但是为什么在发送按钮里面会出现清空不了值,而且在弹出提示中值确实已经没了,页面还在显示


最后一次编辑于  09-20  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

5 个回答

  • binnie
    binnie
    09-23

    点击发送的时候如果键盘还没有收起,就会同时触发bindinput 和 button的click事件,不同机型触发顺序时机会有所不同,可能给click添加延迟来规避

    09-23
    赞同
    回复 1
    • ice
      ice
      09-23
      嗯,确实是加延迟就可以了,但这的确是个问题
      09-23
      回复
  • 娇华
    娇华
    09-19

    你好,麻烦提供能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

    09-19
    赞同
    回复 7
    • ice
      ice
      09-19
      https://developers.weixin.qq.com/s/qe3KvvmT7bbL 通过form提交的就会发生我上面描述的这种情况,模拟器和真机调试都不会发生,手机预览模式很容易复现
      09-19
      回复
    • ice
      ice
      09-19回复ice
      整个页面就一个按钮和一个输入框,很纯粹的测试环境
      09-19
      回复
    • 娇华
      娇华
      09-20回复ice

      HIA,我这边在Android和ios测试,预览下都没有复现这个问题

      09-20
      回复
    • ice
      ice
      09-20回复娇华
      用我发的代码片段测试喔,我测试了几个安卓机都存在的
      09-20
      回复
    • 仙森ღ₅₂₀¹³¹⁴
      仙森ღ₅₂₀¹³¹⁴
      09-20回复娇华
      没有安卓
      09-20
      回复
    查看更多(2)
  • 仙森ღ₅₂₀¹³¹⁴
    仙森ღ₅₂₀¹³¹⁴
    09-19

    写个代码片段吧

    09-19
    赞同 1
    回复 7
    • ice
      ice
      09-19
      这个就麻烦了,这个要跑起来整个项目都要搞上去,看截图代码看的出来不
      09-19
      回复
    • 仙森ღ₅₂₀¹³¹⁴
      仙森ღ₅₂₀¹³¹⁴
      09-19回复ice
      单独写 input 这一块
      09-19
      回复
    • ice
      ice
      09-19回复仙森ღ₅₂₀¹³¹⁴
      https://developers.weixin.qq.com/s/qe3KvvmT7bbL 测试下看看
      09-19
      回复
    • ice
      ice
      09-19
      只有手机预览模式下能复现这个问题,模拟器和真机调试都没问题
      09-19
      回复
    • 仙森ღ₅₂₀¹³¹⁴
      仙森ღ₅₂₀¹³¹⁴
      09-19回复ice
      真机预览测试没问题 ios12.4.1 iPhoneX 微信客户端版本7.0.7
      09-19
      回复
    查看更多(2)
  • ice
    ice
    09-19


    就是用上面的代码片段执行出来的结果,安卓系统,微信版本 7.0.6,第一次点击输入框闪了一下,但是值并未清掉,第二次点击才清空值,每次测试都是这样,这种情况在模拟器和真机调试都不会复现

    09-19
    赞同
    回复 7
    • 仙森ღ₅₂₀¹³¹⁴
      仙森ღ₅₂₀¹³¹⁴
      09-20
      你那边ios 会吗? 我测试没有。安卓的没机子测不了
      09-20
      1
      回复
    • ice
      ice
      09-20回复仙森ღ₅₂₀¹³¹⁴
      ios测试了,ios没问题 iphone6P
      09-20
      回复
    • 仙森ღ₅₂₀¹³¹⁴
      仙森ღ₅₂₀¹³¹⁴
      09-20回复ice
      安卓其他机型有测试吗
      09-20
      回复
    • ice
      ice
      09-20回复仙森ღ₅₂₀¹³¹⁴
      安卓系统应该是很容易复现这个问题,因为程序在内测时很多同事反馈有发送了输入框还有值的bug,当时把程序代码全部过了一遍,实在想不出其他可能性,就怀疑这个控件有bug,和这个是同一个问题,现在是加了一个延迟处理才解决了这个问题
      09-20
      回复
    • 仙森ღ₅₂₀¹³¹⁴
      仙森ღ₅₂₀¹³¹⁴
      09-20回复ice
      嗦嘎。
      09-20
      回复
    查看更多(2)
  • 放着我来
    放着我来
    09-19
    没听说其他人有这个情况,应该是你们程序bug
    09-19
    赞同
    回复 1
    • ice
      ice
      09-19
      其他场景下确实没遇到这种情况,但是这种交互场景还是比较特殊的,你看截图,alert分明没有值,但是输入框还有显示,可能是和其他事件冲突,比如input事件重新赋值,但是调试时就不能复现这个问题,所以也没法debugger跟踪,我怀疑是在setData时页面重新渲染,渲染时可能触发了文本失去焦点或者input事件,我加了延迟处理就可以了,只是还是感觉很怪异
      09-19
      回复
问题标签