ng-click而不是submit

时间:2017-05-01 22:16:17

标签: javascript jquery angularjs forms

在单击表单中的提交后,会运行一些javascript来修改数据并将其发送到HTML中指定的任何表单操作:

// Submit the form:
    // $form.get(0).submit();
    $('.submit', $(event.target.form)).click();

我想改为使用ng-click并将该信息发送到角度函数,例如vm.checkout()。

我怎样才能实现这一目标?

3 个答案:

答案 0 :(得分:1)

使用ngSubmit指令代替ngClick进行表单提交。它绑定到提交form时触发的提交事件。

  

ng-submit仅在提交表单时有效。   如果ng-click可以在没有表单提交事件的情况下工作。

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

myApp.controller('MyCtrl', function($scope) {
    $scope.submitMe = function () {
    alert('Submitted');
  };
});

<div ng-app="myApp" ng-controller="MyCtrl">
    <form ng-submit="submitMe()" name="myForm">
    <button type="submit">submit</button>
  </form>
</div>

答案 1 :(得分:0)

的JavaScript

$scope.submit = function(data){
     // do something with data
}

HTML

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

答案 2 :(得分:0)

如果是您提交的表单,则应使用ng-submit。添加ng-submit标签以及将在您的控制器中的相应功能。然后,您将能够处理表单提交中的数据。

例如:

<form ng-submit="submit()" ng-controller="ExampleController"></form>