2016-04-25 4 views
1

У меня есть база данных студентов с элементом ввода текста. Пока страница загружается, студент должен быть выделен с использованием фонового текста ввода.Установить фокус на входной элемент угловой js

Я добавил динамический класс, который установит фокус, если установить true. Если я сопоставляю его со статическим классом, он отлично работает. Если я сопоставляю его с динамическим классом, это не так.

Каким образом я могу выбрать динамический класс для директивы.

Here is my JSFIDDLE CODE

Комментируя этот ТДС один в то время поможет вам разобраться в вопросе

<td><input type="text" ng-class="student.focus?'focus-me':''"></td> //dynamic class 
<td><input type="text" class="focus-me"></td> // static class 
+0

Я получил ответ https://jsfiddle.net/alaksandarjesus/0wmjy6qs/2/ –

+0

Если кто-то может помочь мне с динамической загрузкой классов, я бы очень признателен. –

+0

ng-if вызывает много проблем. Предложите не использовать ng-if, вместо этого используйте ng-class. –

ответ

0

This fiddle может помочь вам понять, как правильно установить класс, используя нг-класс.

<input type="text" ng-class="{'focus-me':student.focus}"> 

Когда значение student.focus истинно, класс «focus-me» применяется во входном теге.

0

В первой попытке я бы просто расширить эту директиву:

link: function(scope, element,attributes){ 
    if ($parse(attributes.focusMe)(scope)) { 
     element[0].focus(); 
    } 
    } 

В HTML:

<td><input type="text" focus-me="student.focus"></td> 

https://jsfiddle.net/hph1sja2/

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