我有这样的angularJs脚本
':s3_domain_url'
在我的HTML中
var formApp = angular.module('formApp', []);
formApp.controller('formController', ['$scope', '$http', function($scope, $http) {
$scope.formData = {};
$scope.processForm = function() {
$http({
method : 'POST',
url : $('form').attr('action'),
data : $scope.formData,
headers : { 'Content-Type': 'application/x-www-form-urlencoded' }
})
.success(function(data) {
console.log(data);
if (!data.success) {
$scope.errorName = data.errors.name;
$scope.errorSuperhero = data.errors.superheroAlias;
} else {
$scope.message = data.message;
$scope.errorName = '';
$scope.errorSuperhero = '';
}
});
};
}]);
但结果我的表格没有发送。什么都没发生。我不知道做错了什么。请帮我解决这个问题
答案 0 :(得分:2)
如果您想使用ng-submit,请将按钮输入替换为以下内容:
<input type="submit" id="submit" value="Register now" />
但是,我建议删除表单元素上的ng-submit并修改输入按钮:
<input ng-click="processForm()" class="btn btn-primary" type="button" value="Register now" />
无论哪种方式都有效,但您不应尝试在提交按钮和表单上的ng-submit上合并ng-click。
请参阅ng-submit的角度文档: https://docs.angularjs.org/api/ng/directive/ngSubmit
答案 1 :(得分:2)
此外,您可以使用ng-submit:http://jsfiddle.net/sherali/HB7LU/17101/
更改这些内容:删除ng-click="Submit"
并更改type="submit"
<input class="btn btn-primary" type="submit" value="Register now" />
答案 2 :(得分:-1)
试试这个
<form action="/todo">
....
<input ng-click="processForm()" class="btn btn-primary" type="button" value="Register now" />
</form>
希望,这个帮助