我在ng-model和input元素方面遇到了一些问题。请看看这个plunker:http://plnkr.co/edit/PJCv1AsPns1cxuSPTZiU
我的观点是当我编辑输入值并在开头和结尾添加一些空格时。
some text
然后点击save
从inputValue
修剪空白区域(并且它可以),但是如果我再次编辑它,那么"之前的"输入中出现空格。怎么预防呢?我尝试用
angular.element($('#trimInput')).val($scope.inputValue);
它有效,但我不喜欢这个解决方案。
angular.module('app', [])
.controller('trim', ['$scope', function($scope) {
$scope.inputValue = "some text";
$scope.editMode = false;
$scope.edit = function() {
$scope.editMode = true;
};
$scope.save = function() {
$scope.editMode = false;
//angular.element($('#trimInput')).val($scope.inputValue);
console.log($scope.inputValue);
console.log($scope.inputValue.length);
};
}])

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body ng-app="app">
<div ng-controller="trim">
<div ng-show="!editMode">
[{{inputValue}}]
<button ng-click="edit()">edit</button>
</div>
<div ng-show="editMode">
<input id="trimInput" type="text" ng-model="inputValue" />
<button ng-click="save()">save</button>
</div>
</div>
</body>
&#13;
答案 0 :(得分:0)
默认情况下,ng-trim
的角度为true
,因此会自动调整范围内的值。但是input
上的值不会更新,意味着会有额外的输入。你必须手动分配它。
$document[0].getElementById("trimInput").value = $scope.inputValue;
为此,您需要在应用程序中注入$document
。保存时,这会自动为每个输入赋值。
答案 1 :(得分:0)
使用
RowNumber ApplicationDecisionID previousDescIDRowNumber
-------------------- --------------------- -----------------------
1 705 <blank>
2 989 705