我正在使用一個只能接受希伯來字符的輸入字段的ng-pattern。使用ng-pattern(Angular.JS)和unicode字符的不良結果
我已經找出什麼unicode數字希伯來字符。
這是我的模式:
$scope.onlyHebrewPattern = /[\u05D0-\u05F3]+/g;
我的表單輸入:
<input tabindex=1 type="text" ng-disabled="disableButtons" name="firstname" ng-minlength="2" ng-maxlength="15" ng-model="register.firstName" placeholder="first name" ng-pattern="onlyHebrewPattern" required title="please enter your name">
現在對於這種模式會工作,將不填充$ scope.firstname與錯誤的結果最喜歡的輸入: 「A B C D」。
但有些輸入如:「שדas」,由於某種原因被模式接受。
我相信問題依賴於模式定義。有些東西一定是錯的,但我確信u05D0-u05F3真的是我需要的範圍。那麼我的問題在這裏?
看起來像ng-pattern匹配值的開始,而不是整個值。請參閱http://stackoverflow.com/questions/18746913/ng-pattern-for-only-numbers-will-accept-chars-like-in-angular-js – bobince