проверить текстовое поле со значением по умолчанию - PullRequest
0 голосов
/ 10 сентября 2018

У меня есть текстовое поле следующим образом:

  <div form="form-group">
    <label for="Title"> <h3>Title:</h3>  </label>
    <div [ngClass]="{
    'has-errors': (dataProcessingEditForm.controls.Title.errors && dataProcessingEditForm.controls.Title.dirty ),

    'has-success': (!dataProcessingEditForm.controls.Title.errors )
    }">
      <input type="text" name ="Title" class="form-control" autocomplete="off" placeholder="*Title"
             value="{{theDP.title}}" formControlName="Title">
      <!--Validations-->
      <ul class="help-block">
        <li *ngIf="(dataProcessingEditForm.controls.Title.errors?.required && dataProcessingEditForm.controls.Title.dirty)
                   ">
          This field is required</li>
      </ul>
    </div>
  </div>

Текстовое поле заполнено данными, которые я прочитал из БД в моей функции ngOnInit (). Видимо, валидатор дозы не признает, что он имеет значение, поэтому он просит меня его заполнить. Как я должен изменить валидатор, чтобы реализовать значение? Я использовал следующее:

'has-success': (!dataProcessingEditForm.controls.Title.errors || dataProcessingEditForm.controls.Title.hasValue )

но, похоже, не работает. Спасибо заранее за вашу помощь.

1 Ответ

0 голосов
/ 10 сентября 2018

Просто замените значение на ngModel

<div form="form-group">
    <label for="Title"> <h3>Title:</h3>  </label>
    <div [ngClass]="{
    'has-errors': (dataProcessingEditForm.controls.Title.errors && dataProcessingEditForm.controls.Title.dirty ),

    'has-success': (!dataProcessingEditForm.controls.Title.errors )
    }">
      <input type="text" name ="Title" class="form-control" autocomplete="off" placeholder="*Title"
             ngModel="theDP.title" formControlName="Title">
      <!--Validations-->
      <ul class="help-block">
        <li *ngIf="(dataProcessingEditForm.controls.Title.errors?.required && dataProcessingEditForm.controls.Title.dirty)
                   ">
          This field is required</li>
      </ul>
    </div>
  </div>
...