javascript - 无法访问第二种形式的字段

标签 javascript angularjs angularjs-ng-form

我的应用程序中有一个页面,其中包含多步骤表单。为了实现这一点,我在单独的选项卡中设置了 3 个表单。然后,只有当您的表单成功验证时,js 才允许您继续下一步。

第一个表单工作完美,我也在第二个表单上使用了相同的结构(如下所示)。

<div class="stepped-content" ng-show="steps[steps_index.yourDetails].active">
  <form name="yourDetails" class="form-horizontal vs-onsubmit" ng-submit="submitForm('yourDetails')" novalidate>
    <div class="form-group" ng-form="organiser_name">
      <label class="col-sm-4 control-label">Event organiser</label>
      <div class="col-sm-8">
        <input class="form-control" type="text" name="organiser_name" ng-model="event.organiser_name" placeholder="You or your company's name." ng-required="true" />
        <div ng-messages="yourDetails.organiser_name.$error">
          <div ng-message="required">Please tell us who is organising this event.</div>
        </div>
      </div>
    </div>
  </form>
</div>

但是,当我打印出{{ yourDetails.organiser_name | json }} 它是未定义的。 {{ yourDetails }} 本身已定义:

{
  "$error": {},
  "$name": "yourDetails",
  "$dirty": false,
  "$pristine": true,
  "$valid": true,
  "$invalid": false,
  "$submitted": false
}

我很难看出我所写的内容有什么问题,所以也许我错过了一条不允许多种 Angular 形式的规则?

谢谢

最佳答案

不超过一个表单,但表单名称会用来放 FormController进入范围。

如果您有两个或多个表单具有相同的 name 属性,则最后处理的表单将覆盖之前的表单。

关于javascript - 无法访问第二种形式的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28301025/

相关文章:

javascript - 带有 AngularJS 指令的类似 Google 的搜索框

javascript - Angularjs 表单验证

javascript - 使用 javascript 转到页面的某个部分

javascript - 当容器有选择框时 jQuery mouseleave 触发的问题

javascript - 绘制形状,插入数据

javascript - 注入(inject)工厂时 Angular 停止工作

javascript - 如何连接两个数组并删除javascript中的重复项

javascript - 使用 angularjs 从 json 中获取 ng-options

javascript - 将 Object 元素的大小调整为其容器元素

具有两个组件的 Angular NgForm