Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.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
Javascript 动态形式不是';未标记为已提交_Javascript_Angularjs_Angularjs Ng Form - Fatal编程技术网

Javascript 动态形式不是';未标记为已提交

Javascript 动态形式不是';未标记为已提交,javascript,angularjs,angularjs-ng-form,Javascript,Angularjs,Angularjs Ng Form,我有一个ng repeat,其中包含以下表单: <form name="wrapperForm"> <div ng-repeat="thing in things track by $index"> <ng-form name="myForm{{$index}}"> <input type="text" ng-model="thing.name" required /> <span ng-show="myF

我有一个ng repeat,其中包含以下表单:

<form name="wrapperForm">
  <div ng-repeat="thing in things track by $index">
    <ng-form name="myForm{{$index}}">
      <input type="text" ng-model="thing.name" required />
      <span ng-show="myForm{{$index}}.$submitted">Form submitted!</span>
      <button type="button" ng-click="doSubmit($index)" />
    </ng-form>
  </div>
</form>

无论出于何种原因,
$setSubmitted
都不会执行任何操作,也不会更改表单的
$submitted
属性。

不确定您做错了什么。我有一个基于你的例子。我使用的是
表单。$invalid
但这是相同的想法。我不能重现你的错误。请提供更多详细信息。@ryanyyu-区别在于,您的错误在无效时显示,我在表单提交时显示。
$submitted
这是相同的想法。一个概念的证明。然后您必须提交表单,消息也应该以同样的方式显示。您当前的语法没有问题。除了在您提供的代码中没有实际提交表单之外。@ryanyyu进行了必要的编辑-问题是表单从未将$submitted设置为true。我仍然无法复制此设置。一旦我正确地关闭了
元素,它就可以正常工作了。我根据之前的评论更新了plunker。
$scope.doSubmit = function(index) {
  var form = $scope.wrapperForm['myForm' + index];
  form.$setSubmitted();
}