Angularjs ng-pattern不能与textarea一起使用

时间:2016-06-28 19:24:38

标签: javascript angularjs

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

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

2 个答案:

答案 0 :(得分:0)

代码似乎很好,但由于你没有提供你的整个代码,我不能说太多..

但请查看以下正常工作的链接

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

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

答案 1 :(得分:0)

您的正则表达式不会检查您列出的所有字符。您将要查看表单对象或formobject.fieldname

的$ valid或$ error属性
<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>