首页 新闻 会员 周边

点击搜索,要求input框不会失去焦点

0
[已解决问题] 解决于 2019-09-20 08:32

wwj007的主页 wwj007 | 菜鸟二级 | 园豆:245
提问于:2019-09-19 11:28
< >
分享
最佳答案
0

点击搜索时移除input的焦点就可以:
document.getElementById('txtAnswerMarkdown').blur()

奖励园豆:5
顾星河 | 大侠五级 |园豆:7173 | 2019-09-19 11:38

我要的是不会失去焦点,默认就是会失去焦点,
同样的写法focus ,即使在最原始的input上面也是不生效的,试验一下就会知道

wwj007 | 园豆:245 (菜鸟二级) | 2019-09-19 13:49

@wwj007: 不好意思看岔了,那你试下下面的:
$("#txtCommentMarkdown").trigger("focus");
点击搜索时通过trigger触发一下focus事件,我这边在控制台用这个回复框测试了一下,当焦点不在回复框时,执行上面代码,焦点可以回到回复框。

顾星河 | 园豆:7173 (大侠五级) | 2019-09-19 14:41

@默卿: 因为不允许用jq,我用JS进行了改写,但是不行.....
<input type="text" id="input"> <button id="btn">按钮</button>
var input = document.getElementById('input') var btn = document.getElementById('btn') btn.onclick = function () { var myEvent = new Event('focus'); input.dispatchEvent(myEvent); }

wwj007 | 园豆:245 (菜鸟二级) | 2019-09-19 15:20

@wwj007:

我这样写可以用,你那边不可以吗

顾星河 | 园豆:7173 (大侠五级) | 2019-09-19 16:13

看GIF,我先点input,此时有焦点,然后点页面空白,此时无焦点,再点btn,焦点是可以回到input的,不管我点多少次btn,焦点都可以在input上

顾星河 | 园豆:7173 (大侠五级) | 2019-09-19 16:20

@默卿: 是啊,下面是我相关代码

<div @click="showPanel">
        <el-input
          @focus="showPanel"
          @blur="hidden"
          v-model="searchKey"
          placeholder="搜站点、流域、河流、大坝等"
          style="border-radius:4px 0 0 4px"
        ></el-input>
      </div>
      <el-button
        size="mini"
        class="el-icon-search"
        type="primary"
        style="background-color:#409EFF;"
        @click="search"
      ></el-button>
  search: function() {
      document.querySelector('.el-input__inner')[0].focus()
    }
wwj007 | 园豆:245 (菜鸟二级) | 2019-09-19 18:08

@默卿: 总之,谢谢啦

wwj007 | 园豆:245 (菜鸟二级) | 2019-09-20 08:32
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册