2016-08-29 2 views
0

Я недавно много раз искал и не нашел ни одного хорошего ответа или правильного решения для меня. Я хочу создать директиву для управления изменениями ввода формы при размытии. Он предназначен для редактирования пользовательских настроек внутри инструмента.AngularJS: Форма просмотра для изменения ввода при размытии

Таким образом, пользователь нажимает внутри поля ввода из формы под названием «generall», пока здесь ничего не должно произойти, если пользователь редактирует (печатает), также не должно произойти ничто. Теперь пользователь нажимает на внешнее (размытие) поле, директива должна вызывать функцию типа «updateSettings» и давать им имя формы (generall) и все имя + значение из полей.

Может выглядеть так var vars = { formName: 'generall', fields: {ALLFIELDS} }.

Я попробовал Allready с этой функцией:

return { 
    require: "form", 
    link: function(scope, element, attrs){z 
    var cb = $parse(attrs.formOnChange); 
    element.on("change", function(){ 
     cb(scope); 
    }); 
    } 
}; 

Вот мой код: https://plnkr.co/edit/KrjtJVCS9kxRckMH3Mv6?p=preview

+0

Вы можете настроить jsfiddle/jsbin, что rep порождает минимальную проблему? –

+0

Добавлено it @ ti2005 – muuvmuuv

ответ

0

использование

element.on("blur",function(){}) 

директива образец

app.directive("myDirective", function ($rootScope) { 

    return { 
     controller: function ($scope) { 

     }, //end of controller 
     restrict: 'A', 
     // element must have ng-model attribute. 
     require: 'ngModel', 
     link: function ($scope, ele, attrs, ngModel, $rootScope) { 

      ele.on('blur', function() { 
       //write functionality here 

      }); 

     }, //end of link function 
    } //end of return 
}); //end of myDirective 
+0

Я вложил это в свой код (связал его выше с HTML), но он все равно не сработает. Может быть, что-то с моим приложением неправильно? – muuvmuuv

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