如何为表单之外的按钮启用AngularJS验证?

如何为表单之外的按钮启用AngularJS验证?,angularjs,forms,angularjs-scope,angularjs-validation,Angularjs,Forms,Angularjs Scope,Angularjs Validation,我是angular的新手,我被击中触发了一个表单验证,按钮位于表单外部。我有两个按钮,一个在表单内部,一个在表单外部,我想让外部按钮执行与内部按钮相同的任务 <form ng-app="myApp" ng-controller="validateCtrl" name="myForm" novalidate> <p>Username: <br> <input type="text" name="user" ng-mo

我是angular的新手,我被击中触发了一个表单验证,按钮位于表单外部。我有两个按钮,一个在表单内部,一个在表单外部,我想让外部按钮执行与内部按钮相同的任务

<form ng-app="myApp" ng-controller="validateCtrl" name="myForm" novalidate>
    <p>Username:
        <br>
        <input type="text" name="user" ng-model="user" required>
        <span style="color:red" ng-show="myForm.user.$dirty && myForm.user.$invalid">
            <span ng-show="myForm.user.$error.required">Username is required.</span>
        </span>
    </p>
    <p>Email:
        <br>
        <input type="email" name="email" ng-model="email" required>
        <span style="color:red" ng-show="myForm.email.$dirty && myForm.email.$invalid">
            <span ng-show="myForm.email.$error.required">Email is required.</span>
            <span ng-show="myForm.email.$error.email">Invalid email address.</span>
        </span>
    </p>
    <p>
        <input type="submit" ng-disabled="myForm.user.$dirty && myForm.user.$invalid || 
                                          myForm.email.$dirty && myForm.email.$invalid">
    </p>
</form>

用户名:

用户名是必需的。

电邮:
电子邮件是必需的。 无效的电子邮件地址。

我的笨蛋


感谢您的帮助

解决方案

要使其工作,您需要将按钮移动到Angular的范围内,为此您需要将
ng app=“myApp”ng controller=“validatetrl”
标记移动到
标记,还需要确保
标记具有与内部按钮相同的
ng disabled
属性

完整演示


验证示例
用户名:
用户名是必需的。

电子邮件:
电子邮件是必需的。 无效的电子邮件地址。

另一个外部按钮触发表单 var-app=angular.module('myApp',[]); app.controller('validateCtrl',函数($scope){ $scope.user='John Doe'; $scope.email='john。doe@gmail.com'; });