heinetz: Formular per Ajax versenden

Beitrag lesen

... ich hab's mal ausprobiert:

  submitForm(event) {
    event.preventDefault();
    const { action, method } = this.elements.commentForm;
    const body = new FormData(this.elements.commentForm);
    console.log(fetch(action, { method, body }));
    //return fetch(action, {method, body});
  }

Ich versuche, den Code zu interpretieren:

  • Die Konstante(n) { action, method } werden mit den Attribut-Werten des Formulars gefüllt.
  • In der Konstante body werden mit den Attribut-Werten des Formulars gefüllt.

Die Console gibt zwei Zeilen aus:

Promise {<pending>}
POST http://localhost:8000/html/templates/[object%20HTMLInputElement] 404 (Not Found)

Ich glaube, ich habe den (ersten) Fehler gefunden:

Der POST-Request wird ja an eine etwas 'eigenartige' URL gesendet. Nachdem in der Konstante 'method' erwartungsgemäss der Wert aus dem Attribut 'method' stand, wunderte ich mich, warum das nicht analog mit dem Attribut 'action' funktionierte ... bis ich herausgefunden habe, dass das Formular ein Input-Feld vom type="hidden" mit dem Namen 'action' enthält.

gruss, heinetz