Angularjs表单提交,url作为操作iframe作为目标

时间:2015-07-02 11:19:25

标签: html angularjs

我正在尝试进行表单提交,其中url作为操作,目标为iframe。我通过API调用获取操作URL。如果我在控制器中硬编码网址,它将正常工作。但是如果我从API获取url,则单击提交按钮将不执行任何操作。这可能是什么问题。代码就像下面的代码片段。

HTML

<form action='{{trustedUrl}}'  method="POST"  target='iframe'>
   <input type="text" />
    <input type="submit", value="submit" />
 </form>

Java脚本

var testCtrl = ['$scope',function($scope){
  
  var pageInitialize = function(){
    $scope.trustedUrl = '';
    
    getUrl(function(data){
        trustedUrl = data.URL;
    
    });
  
  
  }
  
  
}]

3 个答案:

答案 0 :(得分:1)

你错过了 $ scope 这里

getUrl(function(data){
    $scope.trustedUrl = data.URL;
//-----^
});

答案 1 :(得分:0)

您缺少$ sce,如下所示:

var testCtrl = ['$scope','$sce',function($scope,$sce){
   var pageInitialize = function(){
      $scope.trustedUrl = '';

   getUrl(function(data){
      trustedUrl = $sce.trustAsResourceUrl(data.URL);

   });
  }
}]

您可以在角度文档中阅读有关$ sce的更多信息。

答案 2 :(得分:0)

这适用于Angular 2              

    <form target="frame" action="<Your URL to POST>" #form method="POST" hidden="hidden">
        <input name="token" value={{token}}>
    </form>

从组件中的nginint()调用nativeElement.submit()。

这里类似 Angular way to submit form data to iframe