編集回答:
あなたは、単に正規表現[\w,./_=?-]+
を使用することができます。
内訳と正規表現の説明:
+
数量詞 - ([a-zA-Z0-9_]
に等しい)1と無制限の時間の間の一致、できるだけ多くの回数、必要に応じて恩返し(貪欲)
\w
マッチ任意の単語文字
,.
は、リスト内の単一の文字,.
/
が/
文字通り
_=?-
リストでの1文字にマッチした文字に一致する一致しました
var myApp = angular.module('myApp', []);
myApp.controller('MyCtrl', ['$scope',
function($scope) {
$scope.checkSpace = function(event) {
if (event.keyCode === 32 && typeof $scope.inputBox === 'undefined') {
event.preventDefault();
}
};
}
]);
.ng-invalid {
border: 1px solid red;
}
.ng-valid {
border: 1px solid green;
}
input:focus {
outline: none;
}
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.min.js"></script>
<meta charset="utf-8">
<title>JS Bin</title>
</head>
<body ng-app='myApp'>
<div ng-controller="MyCtrl">
<input class="form-control" name="description" placeholder="Add your description" ng-model="inputBox" ng-keydown="checkSpace($event)" pattern="[\w,./_=?-]+" required>
</div>
</body>
</html>
その値だけ空間(S)を有する場合ng-invalid
クラス要素に追加されることに注意してください。
あなたは、角度特定の検証やHTML5の検証を探していますか? –
html5 validation – JVM