2016-02-18 3 views
0

Использование SemanticUI модального. Я хочу, чтобы событие срабатывало, которое показывает модальный, затем устанавливает .focus() и .select() в текстовом поле в форме (это не первый элемент управления в форме).SemanticUI - установить фокус на textarea в Modal

Не появляется огонь, когда у меня есть это:

$('.ui.modal').modal('setting', { 
 
     autofocus: false, 
 
     onVisible: function() { 
 
     $('.ui.modal textarea').focus(); 
 
     $('.ui.modal textarea').select(); 
 
     } 
 
    }).modal('show');

+0

Вы пытались использовать атрибут автоматической фокусировки? http://www.w3schools.com/tags/att_textarea_autofocus.asp –

ответ

0

Appearently, autofocus вариант срабатывает после того, как любой другой фокус установлен, будь то HTML атрибуты или onVisible обратного вызова и отменяет его ,

<textarea autofocus="true">, снятый Cas Nouwens, будет просто сфокусирован на элементе textarea, но он не позволит вам выбрать его текст. Если это желаемое поведение, вы можете придерживаться этого решения и полностью удалить modal('setting' ,{...}).

В противном случае я нашел (довольно грязное, допустим) обходное решение, завернув ваш код в крошечный таймаут. Переход почти невидимый.

$('.ui.modal').modal('setting', { 
    autofocus: false, 
    onVisible: function() { 
    setTimeout(function() { 
     $('.ui.modal textarea').focus(); 
     $('.ui.modal textarea').select(); 
    }, 10); 
    } 
}).modal('show'); 

Вот working example

Смежные вопросы