Buen día Desarrollador, tengo dos selectores de fecha boostrap de entrada para que un usuario seleccione y quiero que si se selecciona el primer campo de fecha, el siguiente campo de fecha debe comenzar a partir de un día más la fecha de inicio seleccionada inicialmente en el primer campo de fecha. este es mi primer campo de entrada:
<input (blur)="setMinDate($event)" id="StartTime" type="text" name="StartTime" class="form-control" bsDatepicker datePickerLuxonModifier [(date)]="userFirstInput.startTime" [(ngModel)]="userFirstInput.startTime" [maxDate]="userFirstInput.endTime" [minDate]="startdate" [bsConfig]="{ adaptivePosition: true }" required />este es el segundo campo de entrada:
<input id="EndTime" type="text" name="EndTime" class="form-control" bsDatepicker datePickerLuxonModifier [(date)]="userSecondInput.endTime" [(ngModel)]="userSecondInput.endTime" [minDate]="minPickDate" [bsConfig]="{ adaptivePosition: true }" required />la función que estoy aplicando en la entrada de la primera fecha para almacenar la selección de fecha en la primera fecha de entrada y agregarle un día, que se usará como [minDate] en el segundo campo de fecha de entrada:
minPickDate: DateTime; setMinDate(event){ this.minPickDate = this.userFirstInput.startTime.plus({days:1}); }Pero no funciona, intento usar ngModelChange y Change event pero aún no funcionó. Por favor necesito ayuda .
Intente a continuación usar bsValueChange , espero que funcione para usted
<input (bsValueChange)="setMinDate($event)" id="StartTime" type="text" name="StartTime" class="form-control" bsDatepicker datePickerLuxonModifier [(date)]="userFirstInput.startTime" [(ngModel)]="userFirstInput.startTime" [maxDate]="userFirstInput.endTime" [minDate]="startdate" [bsConfig]="{ adaptivePosition: true }" (bsValueChange)= "setMinDate($event)" required />ts minPickDate: fecha;
setMinDate(value){ var nextDay = new Date(value); nextDay.setDate(nextDay.getDate() + 1); this.minPickDate = nextDay; }