Наше приложение переносится с jQuery на AngularJS с загрузкой (angular -ui bootstrap).
Одной из удобных функций, которая была охвачена следующим превосходным сообщением, было добавление префикса "http://" в поле URL, если у него еще не был префикс: http://www.robsearles.com/2010/05/jquery-validate-url-adding-http/
Я пытаюсь добиться того же в AngularJS с помощью директивы, но не могу получить директиву, чтобы изменить значение ng-модели по мере ее ввода.
Я начал просто, пытаясь получить скрипку, чтобы добавить префикс "http://" на КАЖДОЕ изменение на данный момент (я могу добавить логику позже, чтобы добавить ее, когда это необходимо). http://jsfiddle.net/LDeXb/9/
app.directive('httpPrefix', function() {
return {
restrict: 'E',
scope: {
ngModel: '='
},
link: function(scope, element, attrs, controller) {
element.bind('change', function() {
scope.$apply(function() {
scope.ngModel = 'http://' + scope.ngModel;
});
});
}
};
});
Может кто-нибудь, пожалуйста, помогите мне получить это, чтобы написать обратно в ngModel. Кроме того, поле, в котором я должен применить эту новую директиву, уже имеет директиву с областью выделения, поэтому я предполагаю, что у меня не может быть другого с областью выделения - если это так, я могу достичь этого без выделения области?