私たちのアプリは、ブートストラップ (angular-ui ブートストラップ) を使用して jQuery から AngularJS に移植されています。
次の優れた投稿で取り上げられた便利な機能の 1 つは、URL フィールドにプレフィックスがない場合に「http://」プレフィックスを追加することでした: http://www.robsearles.com/2010/05/jquery-検証-url-追加-http/
AngularJS でディレクティブを使用して同じことを達成しようとしていますが、入力中に ng-model の値を変更するディレクティブを取得できません。
今のところ、すべての変更に「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に書き戻すのを手伝ってくれませんか。また、この新しいディレクティブを適用する必要があるフィールドには、既に分離スコープを持つディレクティブがあるため、分離スコープを持つ別のディレクティブを持つことはできないと想定しています-そうであれば、分離スコープなしでそれを達成できますか?