2016-08-23 27 views
0

我想显示表单,但是当我有表单时,我没有显示表单,有人可以请建议帮助。 我的模板,当绑定数据为空时,表单不显示

<form class="nobottommargin" *ngIf="details" [formGroup]="form" (ngSubmit)="onSubmit(form.value)" name="template-contactform"> 
<div class="col-sm-12 nopadding socialaddress"> 
    <div class="col-sm-12 formpaddingcss"> 
     <h3 class = "headingfontcss">SOCIAL ADDRESS</h3> 
    </div> 
       </div> 
       <div class="input-group divcenter"> 
        <input type="email" tooltip="Enter Facebook url" [tooltipDisabled]="false" [tooltipAnimation]="true" 
        tooltipPlacement="top" name="widget-subscribe-form-email" [formControl]="form.controls['facebook']" [(ngModel)]="details.facebook" class="form-control required email formcontrolheight" placeholder="Facebook" aria-required="true"> 
       </div> 
      </div> 
</form> 

上述表格时,“细节”是空的,不显示,我已经尝试了很多,但还是没有结果。

我的TS,

  export class Social { 
     message: any; 
     http: Http; 
     details: IDetails[]; 
     form: FormGroup; 

     constructor(fbld: FormBuilder, http: Http, private _service: GetAllList,public toastr: ToastsManager) { 
    this.details = [] 
    this.http = http; 
     this._service.getList() 
     .subscribe(details => this.details = details); 


    this.form = fbld.group({ 
     facebook: ['', Validators.required], 
    })} 

回答

0

你有* ngIf指令在表单元素上细节指向。如果细节为空,JS会将其解释为false并且不呈现表单。

+0

所以,我应该删除它? – MMR

+0

似乎并不像你想要的那样。有什么情况你不希望你的表单显示?这是NgIf会支持的。否则,是的,删除它。 –

+0

埃里克,我没有任何条件可以隐藏,但在这里,当我有数据表单与数据显示,并没有没有数据空从不显示,而是它隐藏。 – MMR

0

从您的窗体中删除*ngIf指令,并将您的组件变量facebook的组件值设置为空字符串。

+0

斯蒂文,仍然没有用,我编辑我的代码请你看看 – MMR

+0

我也认为你不需要' [(ngModel)] =“details.facebook”',尝试删除它。 –

+0

这是错误删除它,无法找到控制 '后'” – MMR

相关问题