2017-10-03 3 views
1

のプレースホルダー文字列を取っています。私はタイプ入力numberを持っていますが、フォームを送信したときに何も入力せずに値として "rating"のプレースホルダーテキストを選択します。どのように私はそれを防ぐことができます。数字入力は値として

ここでtheresの入力欄に入力がない

は、以下が動作するはずですすべてのフォーム

<section class="container"> 
    <div class="panel panel-default"> 
    <div class="panel-heading"> 
     <h3 class="panel-title">Add Movies</h3> 
    </div> 
    <div class="panel-body"> 
     <form (ngSubmit)="onSubmit(f)" #f="ngForm"> 
     <div class="form-group"> 
      <input type="text" class="form-control" id="movie-name" placeholder="Enter the Movie Name" ngModel name="movieName" required 
      #name="ngModel" [ngClass]="{isValid: name.valid && name.touched, isInvalid: !name.valid && name.touched}"> 
     </div> 
     <div class="form-group col-md-1"> 
      <input type="number" class="form-control" name="rating" min="1" max="5" placeholder="Rating" size="15" ngModel="rating" required 
      #rating="ngModel" [ngClass]="{isValid: rating.valid && rating.touched, isInvalid: !rating.valid && rating.touched}"> 
     </div> 
     <div class="form-group"> 
      <input type="date" class="form-control" id="release-date" placeholder="Release Date" ngModel name="releaseDate" required 
      #releaseDate="ngModel" [ngClass]="{isValid: releaseDate.valid && releaseDate.touched, isInvalid: !releaseDate.valid && releaseDate.touched}"> 
     </div> 
     <div class="form-group"> 
      <input type="text" class="form-control" id="movie-description" placeholder="Enter the description of the Movie" ngModel name="movieDescription" 
      required #description="ngModel" [ngClass]="{isValid: description.valid && description.touched, isInvalid: !description.valid && description.touched}"> 
     </div> 
     <p class="help-block alert alert-info text-center">By submitting the data, you agree to our Terms and that you have read our Data Use Policy, including our Cookie Use. 
     </p> 
     <button type="submit" class="btn btn-default btn-block" [disabled]="!f.valid">Submit</button> 
     </form> 
    </div> 
    </div> 
</section> 
+0

あなたはすべてのy私たちのフォーム?なぜなら、それがリアクティブフォームであるかどうかにかかわらず、これは同じ答えではないからです。ありがとう – Wandrille

+0

2ウェイバインドを使用してみませんか? [ngModel] = "rating" – Wandrille

+0

を入力してください) – SONGSTER

答えて

2

であれば、私は入力番号フィールドが無効になりたい:

<input type="number" class="form-control" name="rating" min="1" max="5" placeholder="Rating" [(ngModel)]="yourmodelfield" required [ngClass]="{isValid: rating.valid && rating.touched, isInvalid: !rating.valid && rating.touched}">

使用Two way data binding

+0

yourmodelfieldを設定する必要があります。私はプレースホルダのテキストを表示したい – SONGSTER

+0

プレースホルダが表示され、プレースホルダ= "評価"が残ります。 * yourmodelfield *は単に入力にバインドされた変数なので、コンポーネントに「rating」という変数がある場合は「rating」と入力してください。 –

+0

私は理解できませんでした。あなたはplunkrでそれを見せてください。 – SONGSTER

関連する問題