1

我正在尝试确定表单是否有效或不使用角度。

我有这样的表格:

<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);
        }
      });

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

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

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

4

1 回答 1

7

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

顺便说一句,之所以调用它,是form因为这是您在表单标签的 name 属性上指定的值。如果您从控制器想知道特定字段的状态,您还可以将名称属性添加到输入字段。

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

于 2013-09-10T18:25:31.837 回答