Angular 2表单验证不起作用

埃法利

我有一个angular 2应用程序(RC.4),但是表单验证存在问题。

我的模板中包含以下表单代码。

<div class='modal'>
    <form #modalForm='ngForm'>
      <div class='heading'>
        <h4>{{_title}}</h4>
        <div class='close-icon' (click)='close()'></div>
      </div>
      <div class='body'>
        <input type='text' name='projectName' [(ngModel)]='projectName' required placeholder='Give your project a name...' id='focusOnMe'>
      </div>
      <div class='controls'>
        <button class='btn btn-secondary' (click)='close()'>Cancel</button>
        <button type='submit' class='btn' (click)='sendAction()' [disabled]='!modalForm.form.valid'>{{_action}}</button>
      </div>
    </form>
  </div>

如您所见,我命名了form元素并将其设置为ngForm,然后在输入中包含了必需的属性,最后在Submit按钮上,我说了[disabled] =!modalForm.form.valid,但是出于某种原因,该表单始终是即使所需的输入为空,也标记为有效。我在这里想念什么?

本·理查兹(Ben Richards)

对于Angular 2 RC 4:

您缺少告诉表单您的“ projectName”输入应作为表单验证的一部分的部分。只需添加“ ngControl ='inputId'”:

<input type='text' 
       name='projectName' 
       ngControl="projectName" 
       [(ngModel)]='projectName' 
       required 
       placeholder='Give your project a name...' 
       id='focusOnMe'>

对于Angular 2.0 Final:

  1. 将[formGrooup]添加到您的表单中:

<form [formGroup]="modalForm">

  1. 将“ formControlName”添加到您的控件中:

    <input type='text' name='projectName' formControlName="projectName" [(ngModel)]='projectName' required placeholder='Give your project a name...' id='focusOnMe'>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Angular 2+ 表单数组验证不起作用

Bootstrap 表单验证在 angular2 中不起作用

表单验证在 angular 中不起作用?

Angular 4 表单验证不起作用

Angular支持表单验证不起作用

Angular 2 - 自定义表单验证器不起作用

Angular 5表单验证(必需)不起作用

动态表单验证在Angular 6中不起作用

Angular 2-基本表单验证不再起作用

Angular 2动态表单绑定不起作用

尝试使用 Angular2 表单模型进行条件验证。尝试使用 myForm.setValidators(),但似乎不起作用

带有反应形式的 angular 4 表单验证不起作用

为什么CKEditor 4 Angular模块表单字段验证不起作用?

为什么没有ng-model的Angular 1表单验证不起作用

Angular 4表单验证器-minLength和maxLength在字段类型编号上不起作用

Angular 5,Angular Material:Datepicker验证不起作用

带有复选框的Angular 2动态表单不起作用?

Angular 2:在表单标签内输入时搜索管道不起作用

为什么在我的Angular项目中使用此反应性表单示例,验证程序规则似乎不起作用?

Angular 反应式表单自定义验证:更新更改第一次不起作用

Angular 7反应性表单生成器,自定义交叉验证器不起作用

Angular 2 jwt身份验证标头不起作用

Http在Angular 2自定义异步验证中不起作用

Angular2:对节点服务器的 PUT 请求不起作用 - 身份验证丢失

Angular 2插件不起作用

Angular 2、jQuery、*ngFor 不起作用?

Angular2 ngSwitch不起作用

Angular 2 - 路由不起作用

Angular 2 Conditional 属性不起作用