¿Es esto posible en angular?
<button type="submit" [disabled]="!validate && !SAForm.valid">Add</button>Espero que si ambas condiciones son verdaderas, habilitarán el botón.
Ya probé el código anterior pero no funciona como se esperaba.
Parece que necesitas un OR en su lugar:
<button type="submit" [disabled]="!validate || !SAForm.valid">Add</button>Esto deshabilitará el botón si no se valida o si no es SAForm.valid.
Además de la otra respuesta, me gustaría señalar que este razonamiento también se conoce como la ley de De Morgan . En realidad, se trata más de matemáticas que de programación, pero es tan fundamental que todo programador debería conocerlo.
Tu problema empezó así:
enabled = A and B disabled = not ( A and B ) Hasta aquí todo bien, pero fuiste un paso más allá y trataste de quitarte los frenos. Y eso es un poco complicado, porque tienes que reemplazar and / && con or / || .
not ( A and B ) = not(A) OR not(B)O en una notación más matemática:
Siempre tengo presente esta ley cuando simplifico condiciones o trabajo con probabilidades.
Declare una variable en componente.ts e inicialícela a algún valor
buttonDisabled: boolean; ngOnInit() { this.buttonDisabled = false; }Ahora en .html o en la plantilla, puede poner el siguiente código:
<button disabled="{{buttonDisabled}}"> Click Me </button> Ahora puede habilitar/deshabilitar el botón cambiando el valor de la variable buttonDisabled .