0

我正在使用 p-calendar 进行日期选择。现在,我想根据条件设置类属性。对于设置属性,我正在使用 setElementAttribute 函数,但它给了我错误'vendor.bundle.js:70655 TypeError: Cannot read property 'setAttribute' of undefined '。它适用于普通输入或选择标签,但不适用于 p-calendar 标签。

这是 HTML 代码

<p-calendar [showIcon]="true" 
            name="date" 
            id="dateId" 
            #date 
            [(ngModel)]="dateValue"
            [required]="isRequired" 
            autoClear="true" 
            (onSelect)="selectedDate(date.value)" 
            [ngModelOptions]="{standalone: true}" 
            (data)="refreshValue($event)" 
            dateFormat="mm/dd/yy" 
            hourFormat="24">
</p-calendar>

这是ts文件代码

@ViewChild('date ') date : any;

selectedDate(date) { 

    if (date != null) { 

          this._renderer.setElementAttribute(this.date.nativeElement, 'class', 'form-control ng-pristine ng-valid ng-touched');
      } else {
        if(this.isRequired){
          this._renderer.setElementAttribute(this.date.nativeElement, 'class', 'form-control ng-touched ng-dirty ng-invalid');
          this.Flag = false;
        }
      }
  }

这是错误

在此处输入图像描述

4

0 回答 0