angular.js在控制器中形成验证

时间:2015-04-28 21:08:02

标签: angularjs

我收到了这张表格:

<form ng-controller="SomeCtrl as some" name="product[[product.id]]" ng-submit="some.addToCart(something, product[[product.id]].$valid)" novalidate></form>

然后html看起来像:

<form ng-controller="SomeCtrl as some" name="product1" ng-submit="some.addToCart(something, product1.$valid)" novalidate=""></form>

控制器:

this.addToCart = function(something, isValid) {
    console.log(isValid);
}

isValid始终为undefined。如何检测控件中表单是否有效?

1 个答案:

答案 0 :(得分:4)

Demo 如果您想在控制器中进行自己的验证,则不希望使用ng-submit,因为如果表单无效,它将阻止提交表单。

只需使用带有ng-click功能的常规按钮来检查表单的状态。

控制器:

  $scope.submit = function() {
    console.log($scope.myForm.$valid)
  }

HTML

<form name="myForm">
  <input ng-model="myForm.text" type="text" required />
  <button ng-click="submit()">Submit</button>
</form>