es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Angular Textbox Undefined Angular Cuadro de Texto Indefinido

Entonces estoy intentando editar programáticamente un cuadro de texto en una página web a través de la consola de desarrolladores de Chrome.

Este es el código del cuadro de texto.

<input formcontrolname="username" placeholder="Usuario" type="text" required="" class="form-control ng-untouched ng-pristine ng-invalid">

Y aquí está mi código para editar el cuadro de texto.

document.forms[0].elements[0].id = "boxUsername";
document.getElementById("boxUsername").value = "Mi valor";

Sin embargo, cuando intento iniciar sesión después de que el cuadro de texto visualmente tiene texto en él, la página dice que el cuadro de texto es nulo y no hay texto en él. Estoy muy confundido de por qué esto está sucediendo considerando que la función de autocompletar en Chrome establece el valor correctamente y me permite iniciar sesión, pero cuando intento hacerlo manualmente, no funciona.

La página está hecha con Angular, si eso es importante.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Es posible que el framework de Angular esté interfiriendo con tus intentos de editar programáticamente el cuadro de texto. Una opción que podrías intentar es utilizar la funcionalidad de formularios incorporada en Angular para acceder y modificar el valor del campo de entrada. Por ejemplo, podrías probar este código en su lugar:

    const usernameControl = document.querySelector('[formcontrolname=username]');
    usernameControl.setValue('Mi valor');
    

    Esto asume que el elemento del formulario que contiene el campo de entrada se ha inicializado como un formulario de Angular, y que el método setValue está disponible en el objeto de control del formulario. Si esto no funciona, es posible que debas revisar el código del componente de Angular para ver cómo se está gestionando el campo de entrada y modificar tu enfoque en consecuencia.

Comments are closed.