How to disable trimming of inputs in AngularJS?
Solution 1:
The directive in question is new in 1.1.1; you can see it working using JS Bin snippet.
<textarea cols="30" rows="10" ng-model="text" ng-trim="false"></textarea>
Solution 2:
Fallback for angular 1.0.x
var app = angular.module('app', []);
app.directive('ngTrim', function() {
return {
require: 'ngModel',
priority: 300,
link: function(scope, iElem, iAttrs, ngModel) {
if (iAttrs.ngTrim === 'false') {
// Be careful here. We override any value comming from the previous
// parsers to return the real value in iElem
ngModel.$parsers.unshift(function() {
return iElem.val();
});
}
}
}
});
angular.bootstrap(document, ['app']);
http://jsfiddle.net/vXCnj/3/