2016-06-28 58 views
0

我有一个textarea,我需要验证输入,它只允许数字连字符空格和点输入。然而,尝试ng-pattern并没有用简单的例子。改变了模式多次,它看起来像ng模式不存在或没有被调用。有什么建议么?Angularjs ng-pattern与textarea不兼容

<textarea id="field" name="ranges" 
     ng-model="editData.ranges" 
     style="height: 120px;max-width: 400px;" 
     class="form-control" ng-pattern="/^\d+$/"> 
</textarea> 
+0

必须工作,检查'{{formName.rages。$有效}}'某处形式 –

+0

所以我检查了,如果它是无效的,它返回undefined。有没有办法可以触发角度弹出? – user1200279

回答

0

的代码看起来不错,但因为你没有提供你的整个代码,我不能说太多..

但做看看下面的链接,其做工精细

http://jsfiddle.net/u1fm0jLo/128/

<textarea type="text" name="phone" ng-model="phone" 
     ng-pattern="/^\d+$/" maxlength="12" 
     placeholder="555-555-5555"></textarea> 
0

你的正则表达式不检查你列出的所有字符。你会想要观看或者表单对象的$有效或$错误性质或formobject.fieldname

<div ng-app> 
    <div ng-controller="PatternTestCtrl"> 
     <form name="ngform"> 
      <textarea type="text" name="range" ng-model="editData.ranges" ng-pattern="/^[\d+\-\.\s]*$/" maxlength="12"></textarea> 
     </form> 
     form valid? {{ngform.$valid}}<br /> 
     field error: {{ngform.range.$error}}<br /> 
     field valid? {{ngform.range.$valid}} 

    </div> 
</div>