通过ng-submit找到触发按钮

meh*_*rad 8 angularjs

如何通过ng-submit表单中找到触发按钮 并在此按钮中获取属性

<form ng-submit="submit()" ng-controller="Ctrl">
  <input type="submit" att1="A" att2="B" value="Edit" />
  <input type="submit" att1="C" att2="D" value="Delete" />
</form>

<script>
  function Ctrl($scope) {
    $scope.submit = function() {
      alert(this.att1)
      alert(this.att2)
    }
  }
</script>
Run Code Online (Sandbox Code Playgroud)

Ben*_*esh 13

您可以在提交之前使用ng-click更改范围的值

<form ng-submit="submit()" ng-controller="Ctrl">
  <input type="submit" ng-click="setAtts('A', 'B')" value="Edit" />
  <input type="submit" ng-click="setAtts('C', 'D')" value="Delete" />
</form>

<script>
  function Ctrl($scope) {
    $scope.submit = function() {
      alert($scope.att1);
      alert($scope.att2);
    };

    $scope.setAtts = function(a1, a2) {
      $scope.att1 = a1;
      $scope.att2 = a2;
    };
  }
</script>
Run Code Online (Sandbox Code Playgroud)

编辑:$event如果您对使用感兴趣,则旁注不适用于ng-submit $event.target(无论如何不应该从控制器完成)