收藏
回答

请问怎么解决setData让input框输入时会失去焦点?

如果在键盘抬起后去setData渲染数据的话,input框就会失去焦点,请问有办法解决吗?

回答关注问题邀请回答
收藏

3 个回答

  • 郑旭东
    郑旭东
    2019-12-10

    楼主解决问题了吗?我也遇到这个问题,头大

    2019-12-10
    有用
    回复 2
    • 我在等太阳
      我在等太阳
      2019-12-10
      没办法,加了个条件,键盘抬起时不去setData,收起键盘后再渲染。
      2019-12-10
      回复
    • 郑旭东
      郑旭东
      2019-12-10回复我在等太阳
      哦,我刚尝试了一个办法:因为我setData是要改变当前这个input的,所以我先做了一个view,长得像input,然后点击时,再把真的input显示出来,同时设置foucs="true"。我也用到了键盘收起时再渲染input的父节点。
      2019-12-10
      回复
  • 今天天气很好
    今天天气很好
    2019-07-10

    嗯...这个问题似曾相识,我觉得可以用view来代替input框,选中view的时候聚焦到input去,input宽高等于0,动态给view添加字就行了,至于样式的话,随自己喜欢控制呗

    2019-07-10
    有用
    回复 1
    • 郑旭东
      郑旭东
      2019-12-10
      方法类似,先隐藏input,选中view时把input展示出来就搞定了。
      2019-12-10
      回复
  • 箫
    2019-07-10

    能否在这时主动获取焦点?

    2019-07-10
    有用
    回复 7
    • 我在等太阳
      我在等太阳
      2019-07-10

      如果再去主动获取一次,键盘就会先关闭了再打开,体验效果不好,请问有办法阻止setData后input焦点失去吗?

      2019-07-10
      回复
    • Eliauk
      Eliauk
      2019-07-10回复我在等太阳

      可以试试给input加autofocus="autofocus",任何时候都自动获取焦点,然后再自己加一些逻辑处理

      2019-07-10
      回复
    • 箫
      2019-07-10回复我在等太阳

      这样就不清楚了   为什么会在键盘弹起时setData?  是点击input也就是手动获取焦点时有什么需求要在这时setData?

      2019-07-10
      回复
    • Eliauk
      Eliauk
      2019-07-10回复

      对,这个主要看需求,不能瞎改

      2019-07-10
      回复
    • 箫
      2019-07-10回复Eliauk

      只能等大佬来解答啦

      2019-07-10
      回复
    查看更多(2)
登录 后发表内容