AngularJS动态创建并提交表单

时间:2017-07-06 07:07:45

标签: javascript jquery angularjs

我想创建一个表单对象,并在用户执行某些操作时将其提交到我的控制器中。我不想在我的DOM上显示这个表单。

我在这里找到了类似的question,但它基于Jquery。

 $('<form action="form2.html"></form>').appendTo('body').submit();

如何使用AngularJS做到这一点。谢谢

1 个答案:

答案 0 :(得分:0)

如果您真的想通过提交隐藏表单来发送请求,您可以创建一个指令来创建表单,提交表单然后立即再次从DOM中删除表单。像这样:

app.directive('test', function(){
  return {
    restrict: 'E',
    compile: function(element){
      var form = angular.element('<form action="form2.html" method="POST"></form>');
      element.append(form);

      form[0].submit();

      form.remove();
    }
  };
});

尽管如此,还有其他方法可以做到这一点。

但是当你可以像这样使用$http时,我看不出你为什么要这样做的原因:

$http.post('form2.html');