AngularJS JQuery Ajax表单提交等效

AngularJS JQuery Ajax form submission Equivalent

本文关键字:表单提交 Ajax JQuery AngularJS      更新时间:2023-09-26

最近我加入了angularjs,到目前为止它非常棒。我一直在通过$http服务发送AJAX请求。今天我震惊地发现(据我所知)没有简单的方法可以做到这一点。搜索谷歌和SO并没有让我找到复杂的解决方案。

虽然我最终使用了JQuery,但我很好奇是否真的有像JQueryajax这样能够发送表单的东西。下面是简单的JQuery代码来说明我所说的

$.ajax({
           type: "POST",
           url: formUrl,
           data: formData,  
           success: function(data)
           {
                $scope.form = $sce.trustAsHtml('<div class="alert alert-success">Succesfully Registred. You will be taken home in 5 seconds!</div>');
                $timeout(function(){
                    $window.location.href= "#home";
                }, 10000);
           }
         });

在angular中有一个等价物,这里有一个到jsfiddle的链接,并有一个示例实现:http://jsfiddle.net/dmcquillan314/boo5tn62/

第11行的函数是如何向rest api发送请求的示例:

$scope.sendToResource = function() {}

要启用此功能,只需将指令中的函数更改为指向该工厂,它就会向工厂中配置的api url发送请求。

为了用api测试这一点,你必须更改工厂以匹配你的服务器

这里有一些相关文档的链接:

https://docs.angularjs.org/api/ngResource/service/$resource

https://docs.angularjs.org/api/ng/directive/ngSubmit

https://docs.angularjs.org/api/auto/service/$provide

如果有什么不清楚的地方,或者你需要进一步的解释,请告诉我。希望这能帮助你开始。