如何从表单标记之外的按钮手动触发AngularJS验证?

Hao*_*Hao 26 javascript angularjs

鉴于此代码:

<div ng-controller="MyCtrl">
    <form ng-submit="onSubmitted()">

    Header inputs:
        <input type="name" ng-model="sample" required/>
        <input type="name" ng-model="sampleX" required/>

        <input type="submit" value="This submit triggers validation. But I wanted to put this button at the end of the page"/>
    </form>

    <hr/>

    Some other form here. Think line items

    <hr />
    <a class="btn" ng-click="/* what could should be put here, so this can trigger the firt form's validation, then submit? */">Wanted this submit button to trigger the validation+submit on the form in which this button doesn't belong</a>


</div>


var app = angular.module('myApp', []);

function MyCtrl($scope) {

    $scope.onSubmitted = function() {
        alert('submitted!');
    };
}
Run Code Online (Sandbox Code Playgroud)

我希望最后一个按钮在第一个表单上触发验证(然后在事情有效时提交).截至目前,只有表单内的按钮才能触发该表单的验证和提交.表单外的按钮有没有可能的方法呢?

现场测试:http://jsfiddle.net/dzjV4/1/

Mil*_*ric 7

您可以创建可以附加到的指令<a class="btn"....检查这个jsfiddle

http://jsfiddle.net/dzjV4/2/

请注意,我添加<input type='submit' id='clickMe'...并链接到底部的链接<a class='btn' linked="clickMe"...