문자열이 정규 표현식과 일치하는 곳을 감지하고 싶지만 이것이 흐리게 처리되지 않는 것 같습니다. 이 plunkr을 참조하십시오. 여기 angularjs : regexp가 onblur에 실패했습니다
은 JS의 :var endsWithPipeOrSpace = /\s+$|\|$/g;
$scope.inputGetFocus = function() {
$scope.msg = "input gained focus"
if (endsWithPipeOrSpace.test($scope.newquery)) {
$scope.msg += " string match";
} else {
$scope.msg += " string doesn't match";
}
}
$scope.inputLostFocus = function() {
$scope.msg = "input has lost focus"
if (endsWithPipeOrSpace.test($scope.newquery)) {
$scope.msg += " string match";
} else {
$scope.msg += " string doesn't match";
}
}
$scope.newQueryModified = function() {
$scope.msg = "input modified"
if (endsWithPipeOrSpace.test($scope.newquery)) {
$scope.msg += " string match";
} else {
$scope.msg += " string doesn't match";
}
}
여기에 HTML의 :
나는 NG-트림
<input type="text" class="form-control"
id="newquery" ng-model="newquery"
placeholder="Enter your query"
autofocus required autocomplete="off"
ng-change="newQueryModified()"
ng-trim="false"
ng-focus="inputGetFocus()"
ng-blur="inputLostFocus()">
감사처럼
endsWithPipeOrSpace
와 시험$scope.newquery
에 0으로lastIndex
값을 재설정해야 할 많은 좋은 간결한 설명! – datamosh