ChapterSevenSeeds:
Así que tengo este código.
class Validationator
{
constructor()
{
this.initValidation()
}
initValidation()
{
window.addEventListener("load", this.PerformOnLoad, false);
}
PerformOnLoad()
{
var form = document.querySelector("#feedbackcontainer");
form.addEventListener("onsubmit", this.SubmitClicked);
}
SubmitClicked()
{
alert("asdf");
}
}
He intentado usar tanto en 'enviar' y 'onsubmit' y tampoco están trabajando. He comprobado que el selector de consultas es agarrar la forma adecuada. Perdón mi ser un principiante en Javascript. Los controladores de eventos me mantienen derrotar.
Barmar:
El nombre del evento no incluye el on
prefijo - que sólo se utiliza en el nombre del atributo correspondiente.
Además, si se utiliza un método de clase como una función de devolución de llamada, es necesario vincularlo al objeto. De lo contrario, this
en el método será el mundial window
objeto, no el Validationator
objeto.
class Validationator
{
constructor()
{
this.initValidation()
}
initValidation()
{
window.addEventListener("load", this.PerformOnLoad.bind(this), false);
}
PerformOnLoad()
{
var form = document.querySelector("#feedbackcontainer");
form.addEventListener("submit", this.SubmitClicked.bind(this));
}
SubmitClicked()
{
alert("asdf");
}
}