Angular表单不提交

时间:2015-08-03 14:21:24

标签: javascript jquery angularjs

我有这个角度剧本

var app = angular.module('j_app', ['ngMaterial'], function($interpolateProvider)    {
    $interpolateProvider.startSymbol('<%');
    $interpolateProvider.endSymbol('%>');
});

app.controller('j_controller', function($scope, $http) {
  $scope.formdata = {};

  $scope.formsubmit = function(){
    $http({
       method : 'POST',
       url : '/dodong',
       data : $.param($scope.formdata),
       headers : {'Content-Type' : 'application/x-www-form-urlencoded'}
    }).success(function(data){
       console.log(data); 
    });
  };
});

和这种角度形式

<body ng-app="j_app">
<div ng-controller="j_controller">
<form ng-submit="formsubmit()">
    <fieldset>
        <input type="text" name="username" ng-model="formdata.username" placeholder="Your username here..." />
        <input type="password" name="password" ng-model="formdata.password" placeholder="Your password here..." />
    </fieldset>
    <button>Submit test angular</button>
</form>
</div>
</body>

但表单没有提交任何事情但没有抛出任何错误。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

如果你在Plunker中输入它,它将起作用:

<!doctype html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.4.3/angular.min.js"></script>
</head>

<body ng-app="submitTest">
  <script>
    angular.module('submitTest', [])
      .controller('j_controller', ['$scope', function($scope) {
        $scope.text = 'type something, will ya';
        $scope.formsubmit = function() {
          alert("Called");
        };
      }]);
  </script>
  <div ng-controller="j_controller">
    <form ng-submit="formsubmit()">
      <fieldset>
        <input type="text" ng-model="text" name="text" />
      </fieldset>
      <input type="submit" id="submit" value="Submit" /> </form>
  </div>
</body>

</html>

您需要使用<input type="submit">

答案 1 :(得分:0)

我猜想应该删除该线程,因为Angular V6中已使用ngModel。将在V7中完全删除