【发布时间】:2018-03-14 13:22:44
【问题描述】:
这里我有一个number 类型的表单输入,但是每当提交表单时,没有输入任何数字,它选择“评级”的占位符文本作为值。我该如何预防。
如果输入字段中没有输入,我希望输入数字字段无效
这是所有表格
<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>
【问题讨论】:
-
你能提供所有的表格吗?因为无论是否是 Reactive Forms,这都是不一样的答案。谢谢
-
你为什么不使用2路绑定? [(ngModel)]="评级"
-
你怎么能用那个写一个答案
-
编辑将 [ngModel]="rating" 替换为 [ngModel]="rating"
-
它是一个模板驱动的表单,要注册控件,您需要添加不带括号的 ngModel 属性
标签: html forms angular angular-forms