Добавление в input
Подскажите как при нажатии на какой-либо элемент(допустим кнопка с каким-нибудь текстом) текст элемента вставлялся в мой input (у меня несколько инпутов и нужно что бы текст вставлялся именно в тот, который у меня был предыдущий в фокусе)
Пробовал что-то такое, не выходит $(document).on('click','#number li a',function(){ if(($('#input_num1').is(":focus"))) { a = $(this).text(); $('#input_num1').focus(); $("#input_num1").val(a); } else if(($('#input_num2').is(":focus"))) { b = $(this).text(); $('#input_num2').focus(); $('#input_num2').val(b); } }); не выходит думаю потому что при клике на элемент фокус спадает с инпута . Жду предложений как решить, спасибо заранее) |
Вариант 1: Вместо click использовать событие mousedown. Только его надо отменить (event.preventDefault()), иначе элемент украдет фокус (но уже после вставки значения).
Вариант 2: Запоминать последний сфокусированный инпут. Вешаешь обработчик на событие focus, на все инпуты. В обработчике записываешь в переменную ссылку на текущий элемент (this). |
Цитата:
Проще $('input:focus').val(..) |
спасибо большое! попробую сейчас)
|
Часовой пояс GMT +3, время: 04:42. |