Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 限制少数特殊字符,如%、&;及;在输入字段中使用ng模式_Angularjs_Angularjs Ng Pattern - Fatal编程技术网

Angularjs 限制少数特殊字符,如%、&;及;在输入字段中使用ng模式

Angularjs 限制少数特殊字符,如%、&;及;在输入字段中使用ng模式,angularjs,angularjs-ng-pattern,Angularjs,Angularjs Ng Pattern,我有一个密码,密码至少应该是8个字符,字母数字和符号,除了&、“,%”。我给出了ng模式和有限的几个符号。但当我键入&too时,它是接受的。这个ng模式正常工作。当你输入&和$时,它同时接受这两个字符。但它不应该允许&。这就是我的观点 <div class="form-group fields col-xs-12 col-sm-6 col-md-4 col-lg-4" ng-class="{'has-error' : (submitted || tForm.password.$dirty

我有一个密码,密码至少应该是8个字符,字母数字和符号,除了&、“,%”。我给出了ng模式和有限的几个符号。但当我键入&too时,它是接受的。这个ng模式正常工作。当你输入&和$时,它同时接受这两个字符。但它不应该允许&。这就是我的观点

<div class="form-group fields col-xs-12 col-sm-6 col-md-4 col-lg-4" ng-class="{'has-error' : (submitted || tForm.password.$dirty || tForm.submitted) && tForm.password.$invalid }">
    <input type="password" name="password" placeholder ="Password*" class="form-control1" autocomplete="off"  ng-model="model.password" ng-minlength="8" ng-maxlength="20" required ng-pattern="/(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$^*)(._-])(?=.*[^a-zA-Z._-])(?=.*[^a-zA-Z._-])/"  />
<div ng-show="!tForm.password.$error.required && (tForm.password.$error.minlength || tForm.password.$error.maxlength) && tForm.password.$dirty" class="help-block">Passwords must be between 8 and 20 characters.</div>
       <div ng-show="!tForm.password.$error.required && !tForm.password.$error.minlength && !tForm.password.$error.maxlength && tForm.password.$error.pattern && tForm.password.$dirty" class="help-block">Must contain one lower &amp; uppercase letter, number and one non-alpha character (except %,",")</div>
      <div ng-show="(submitted && tForm.password.$error.required) " class="help-block">password is required.</div>
       </div>

密码必须介于8到20个字符之间。
必须包含一个大写和小写字母、数字和一个非字母字符(除%、“、”)外)
密码是必需的。

检查这个。这对我来说很好,不接受&和%

<!DOCTYPE html>
<html ng-app="myapp">

  <head>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
  </head>
  <body>
    <div ng-controller="myCtrl">
    <form name="myForm" ng-submit="onSubmit()">
    <input type="text" ng-model="price" name="price_field" 
           ng-pattern="/(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$^*)(._-])(?=.*[^a-zA-Z._-])(?=.*[^a-zA-Z._-])/" required>
    <span ng-show="myForm.price_field.$error.pattern">Not a valid password</span>
    <span ng-show="myForm.price_field.$error.required">This field is required!</span>
    <input type="submit" value="submit"/>
    </div>
  </form>
  <script>
    angular.module('myapp',[])
    .controller('myCtrl',function($scope){

    })
  </script>
  </body>

</html>

不是有效的密码
此字段必填!
angular.module('myapp',[])
.controller('myCtrl',函数($scope){
})

Hi这将起作用。但当您输入&和$时,它将同时接受这两个参数。但它不应允许-。这就是我的观点。