statusInputText = false;
userLogged = false;
activarUser() {
this.userLogged = true;
}
En el fichero html:
<input type="text" #empresa (keyup)="0" [disabled]="statusInputText">
Usuario logueado: <input type="checkbox" id="cbLogin" [checked]="userLogged">
<!-- llamar a una función del TS -->
{{ activarUser() }}
Eventos del biding. Ejemplo 1:
En el ts:
showUserChecked() {
alert("El usuario ha pulsado el checkbox");
}
En el html:
Usuario logueado: <input type="checkbox" id="cbLogin" [checked]="userLogged" (click)="showUserChecked()">
Ejemplo 2:
txtLogueado = "No te has logueado todavía";
showUserChecked() {
this.txtLogueado = "Te has logueado correctamente";
}
Ejemplo 3 (con paso de parámetro):
En el ts:
showUserChecked(event:Event) {
// para saber que elemento es (por ejemplo: HTMLInputElement) poner console.log(event.target)
if ((<HTMLInputElement>event.target).value == "S") {
this.txtLogueado = "Te has logueado correctamente";
}
else {
this.txtLogueado = "Te has deslogueado";
}
}
en el html:
{{ txtLogueado }}
Logueado:
<input type="radio" value="S" name="rdLogin" id="rdLogin" [checked]="userLogged" (click)="showUserChecked($event)">
No Logueado:
<input type="radio" value="N" name="rdLogin" (click)="showUserChecked($event)">
Ejemplo 4 (igual q el anterior pero con input text):
<input type="text" (input)="cambiarEmpresa($event)">
cambiarEmpresa(event:Event) {
this.empresa = (<HTMLInputElement>event.target).value;
}
Para crear un biding bidireccional del ts al HTML y viceversa lo mejor es usar las directivas ng. Para ello en \src\app\app.module.ts añadir en imports:
FormsModule
Y en el html usar la nomeclatura de banana in box [()] para q vaya de un sitio a otro y viceversa:
<input type="text" [(ngModel)]="empresa">

No hay comentarios:
Publicar un comentario