Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
模型更新后的AngularJS表单发布_Angularjs - Fatal编程技术网

模型更新后的AngularJS表单发布

模型更新后的AngularJS表单发布,angularjs,Angularjs,这似乎很愚蠢,但基本上我想要实现的是非常简单的。我有一个控制器的功能,更新我的模型,然后我必须做一个提交 问题是:提交发生在DOM元素收到相应于模型的值之前,POST数据变为空 下面是我的小提琴问题: AngularJS: var app = angular.module('myApp',[]).run(function($rootScope){ $rootScope.Query = { Name: null, Age: null }; $rootScope.Submi

这似乎很愚蠢,但基本上我想要实现的是非常简单的。我有一个控制器的功能,更新我的模型,然后我必须做一个提交

问题是:提交发生在DOM元素收到相应于模型的值之前,POST数据变为空

下面是我的小提琴问题:

AngularJS:

var app = angular.module('myApp',[]).run(function($rootScope){
      $rootScope.Query = { Name: null, Age: null };

      $rootScope.Submit = function(){
           $rootScope.Query.Name = 'Roger';
           $rootScope.Query.Age = '34';

           document.getElementById('frmApp').submit();
      }
})
HTML:


一些头衔

尝试$apply或$digest。。。但是,在实际应用中,这些都是隐藏字段,我尝试了$apply,但angular说它在$apply中一直存在。实际上,我可以使用$timeout服务获得解决方案,但我对这种反模式解决方案感到恶心。AngularTeam应该为这种情况提供一个“Angular DOM Ready Wrapper”,否则我就遗漏了一些东西……我从来没有遇到过需要这种解决方案的情况,也因为iframe在这种情况下是一个黑盒,但我认为这可能是javascript问题,而不是特定于Angular的问题。但我可能错了。如果我能找到解决办法,今晚我会花一些时间。你在官方文档中找到什么了吗?我没有在应用程序中使用iframe,iframe只是不在jsfiddle之外提交,而是一直关注browser developer视图的network选项卡。正如您所看到的,这些值不会在querystring数据中传递
<body ng-app="myApp">
    <form id="frmApp" target="ifrmTarget" action="anywhere">
          <input type="text" name="Name" ng-model="Query.Name" />
          <input type="text" name="Age" ng-model="Query.Age" />
          <a ng-click="Submit()">Some Title</a>
    </form>
    <iframe name="ifrmTarget"></iframe>
</body>