dave: JavascriptFunktion wird nicht innerhalb des Formulars ausgeführt

Beitrag lesen

Hi,

habe folgendes Problem: Ich möchte mit einem HTML-Button eine Javascript-Funktion aufrufen. Der Button befindet sich in einer Tabelle, in einem Formular:

Kurz und bündig: nicht nachvollziehbar.

Warum zeigst du dann PHP-Code?
Bei einem Problem mit Javascript ist nur Javascript relevant.
Bei einem Problem mit Javascript und dem DOM (das, was der Browser aus dem HTML macht) ist nur Javascript und HTML interessant.

echo "<form action="../Speichern/index.php" method="POST">";

echo "<table cellpadding="0" cellspacing="0" border="0" >";
echo "<tr>";
echo "<td><input type="button" value="test" onclick="test()">";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</form>";

  
Ohne das unnötige PHP Zeugs und der Lesbarkeit wegen eingerückt:  
  
~~~html
<form action="../Speichern/index.php" method="POST">  
  <table cellpadding="0" cellspacing="" border="0" >  
    <tr>  
      <td>  
        <input type="button" value="test" onclick="test()">  
      </td>  
    </tr>  
  </table>  
</form>

"cellpadding", "cellspacing" und "border" sollten per CSS angegeben werden, nicht über diese Attribute.

Wenn du einen Button willst ist es meist schöner auch ein button-element zu verwenden, anstelle des input[type=button].

Event-Listener via HTML-Attribut anzuhängen ist auch keine schöne Lösung. Dafür gibt es .addEventListener in Javascript.

Die Javascript-Funktion befindet sich in der selben Datei und erzeugt zum Testen ein alert-Fenster:

Sie befindet sich sicher auch nur zum Testen in der selben Datei?

Klickt man den Button, so wird die Funktion nicht aufgerufen. Erzeuge ich den gleichen Button außerhalb des Formulars, allerdings schon.

Wie bereits oben gesagt, nicht nachvollziehbar. Bei mir wird der alert() ausgeführt.

Kann mir jemand weiterhelfen?

Ich nicht. Bitte zeige ein Beispiel dass den Fehler bzw. das unerwünschte Verhalten eindeutig zeigt. Am besten als Online-Beispiel. Notfalls einfach Code im Forum, aber dann bitte kein unnötiges PHP drumrum.

~dave