使用angular确定表单是否有效

时间:2013-09-10 17:55:50

标签: javascript validation angularjs

我正在尝试使用angular确定表单是否有效。

我有一个这样的表格:

<form name="form" novalidate>
    <p>
        <label>Number: </label>
    <input type="number" min="0" max="10" ng-model="test.number" required />
    </p>
    <p>
        <label>Name: </label>
    <input type="text" ng-model="test.name" required />
    </p>
    <button ng-click="sendTest(test)">Submit</button>
</form>

而且,在sendTest函数上我做了:

angular.module('demo', [
      ]).controller('MainCtrl', function($scope){
        $scope.test = {
          name: 'das'
        };

        $scope.sendTest = function(test) {
          console.log(form.$valid);
          console.log(test.$valid);
        }
      });

问题是形式。$ valid和test。$ valid都是未定义的。我尝试按照以下示例执行此操作:

http://dailyjs.com/2013/06/06/angularjs-7/ http://www.youtube.com/watch?v=J82OD76QhPo

以下是此演示的完整代码: http://plnkr.co/edit/l0E62KPJu4Z2r15VNjJq

1 个答案:

答案 0 :(得分:7)

form已添加到范围内,请尝试:console.log($scope.form.$valid)

BTW,它被称为form,因为这是您在表单标记的name属性上指定的值。如果您的控制器想要知道特定字段的状态,您还可以将名称属性添加到输入字段。

示例:http://plnkr.co/edit/Ra98yIFYso94flDIqNCD?p=preview