Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.01.2021, 14:25
Кандидат Javascript-наук
Отправить личное сообщение для fori Посмотреть профиль Найти все сообщения от fori
 
Регистрация: 27.01.2021
Сообщений: 117

Поставить фокус на input
Здраствуйте, подскажите пожалуйста как в vue.js поставить фокус на другой обэкт
Тоесть написать ето на vue.js (код ниже работает)
<input id="first" type="text" onkeyup="if (event.keyCode == 13){foc()}">
<input id="second" type="text" >
<script>
function foc(){
	document.getElementById("second").focus();
}
</script>
Ответить с цитированием
  #2 (permalink)  
Старый 30.01.2021, 15:01
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

fori,
может сначала дока и гугля?
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
<div id="el">
<input type="text" @keyup="foc" >
<input type="text" ref="second" >
</div>
<script>
let vue = new Vue({
    el: '#el',
    data: {
    },
    methods: {
      foc(event) {
         if (event.keyCode == 13) this.$refs.second.focus();
      }
    }
})
</script>
Ответить с цитированием
  #3 (permalink)  
Старый 30.01.2021, 15:40
Кандидат Javascript-наук
Отправить личное сообщение для fori Посмотреть профиль Найти все сообщения от fori
 
Регистрация: 27.01.2021
Сообщений: 117

Спасибо))
Можно ли пожалуйста спросить о nextTick,
К примеру
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>

<div id="vue">
  <button @click="foc">show+focus</button>
  <input type="text" id="ob" v-show="show">
</div>
<script>
	
var vue = new Vue({
  el: '#vue',
  data: {
	  show:false,
  },
  methods: {
   foc(){
	   vue.show=!vue.show;
		document.getElementById("ob").focus();
	   //vue.nextTick(()=> {document.getElementById("ob").focus()}); 
	}
  }
})
</script>

Ето должно создать обэкт и поставить фокус на инпут, но никак не могу заставить nextTick работать, извините пожалуйста что часто задаю глупые вопросы, самому не получается разобратся((

Последний раз редактировалось fori, 30.01.2021 в 15:50.
Ответить с цитированием
  #4 (permalink)  
Старый 30.01.2021, 16:17
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

fori,
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>

<div id="vue">
  <button @click="foc">show+focus</button>
  <input type="text" id="ob" v-show="show" ref="test">
</div>
<script>

var vue = new Vue({
  el: '#vue',
  data: {
      show:false,
  },
  methods: {
   foc(){
       (vue.show=!vue.show) && this.$nextTick(() => this.setFocus());
    },
   setFocus() {
        this.$refs.test.focus();
    }
  }
})
</script>

Последний раз редактировалось рони, 30.01.2021 в 16:27.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программно сделать фокус на input Domovenok Элементы интерфейса 2 19.12.2018 20:32
Поставить фокус в форму Jimm529 Общие вопросы Javascript 1 03.02.2014 14:05
поставить в input checked при нажатии на кнопку djonA Общие вопросы Javascript 9 20.03.2013 22:58
При добавлении DOCTYPE "плывут" размеры input type=text Demath (X)HTML/CSS 4 08.07.2012 19:27
В каком Input фокус? Почемучкин Элементы интерфейса 10 08.12.2011 16:56