我想将输入绑定到页面的其他部分,并将用户输入的所有空格替换为其他字符,例如星号。
我的(简化)HTML代码如下所示:
<div ng-app>
<div ng-controller="MyCtrl">
Output: "{{input}}"<br />
<input type="text" ng-model="rawInput" ng-change="onInputChanged()" />
</div>
</div>
相关的控制器也非常简单:
var myApp = angular.module('myApp',[]);
function MyCtrl($scope) {
$scope.input = '';
$scope.rawInput = '';
$scope.onInputChanged = function() {
$scope.input= $scope.rawInput .replace(/\s/g, '*');
};
};
结果与预期不符。将'Hello '
输入文本框时,结果输出为"Hello"
,并删除尾随空格。输入结束时的多个空格也是如此。
在输入中添加非空白字符时,如'Hello W'
,正确地替换并显示空格:"Hello*World"
。
以下是我的问题:如何绑定文本框的值,保留用户输入的所有空格?
我创建了JSFiddle来证明这个问题。