必需属性不适用于 primeng <p-dropdown>



我正在开发一个angular2应用程序,我正在使用primeng作为UI元素。我有下拉菜单,我正在使用这些下拉列表中的选项是从 API 调用动态生成的。现在,当我单击提交按钮时,我希望它在提交之前验证表单。所以我使用"required="required"'来进行验证。

我看到,如果数据未加载到下拉列表中,则验证工作正常,但是当加载数据并填充下拉选项时,primeng验证会中断并且不会抛出任何消息。

这是我的 html 代码..

<div method="post" class="content-form">
<div class="col-lg-6">
<form  #myForm="ngForm" class="form-horizontal" novalidate>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">System of Origin</label>
<div class="col-sm-10">
<p-dropdown class="contentDetails" [options]="systemOfOrigins" [(ngModel)]="defaultSoO" [ngModelOptions]="{standalone: true}"   required="required" filter="filter" placeholder="NONE"></p-dropdown>
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Content Type</label>
<div class="col-sm-10">
<p-dropdown  class="contentDetails" [options]="contentTypes" [(ngModel)]="selectedContentType" [ngModelOptions]="{standalone: true}"  filter="filter"  required="required" placeholder="Choose"></p-dropdown>
</div>
</div>
<div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">Rendition</label>
<div class="col-sm-10">
<p-dropdown id ="rendition"  placeholder="Select Rendition" class="contentDetails" [options]="renditions" [(ngModel)]="renditionSelected" [ngModelOptions]="{standalone: true}"  filter="filter" required="required"></p-dropdown>
</div>
</div>
</form>

我是否没有正确使用所需的属性,或者是否有任何其他方法可以通过 API 调用来完成? 感谢帮助

尝试

<p-dropdown [required]="true">

如果选项数组中有一个用于显示请选择文本的虚拟第一个元素,并且该虚拟元素中的标签在其中具有一些值,则会发生此问题。因此,只需将标签值设置为 '' 或 null 或未定义。它会起作用。

必需的是一个布尔属性。 如果你是动态设置的,[required]="isRequired",否则required="true"应该为你做。

尝试将 required="required" 替换为 required="true",看看这是否使它们成为必需的。 如果没有,我建议添加一个 plunkr

相关内容

  • 没有找到相关文章

最新更新