Funktion aufrufen bei onclick

Hi,

ich hab ein Formular mit diversen input-Feldern und buttons und einem

nun möchte ich beim Klicken eines Buttons A die Javascript-Funktion newRow() aufrufen, die das Value-Attribut vom input mit name=„function“ auf value=„newRow“ ändert. Anschließend soll das Formular ganz normal abgesendet werden, so dass ich den Parameter auf Serverseite verwenden kann.

dies funktioniert leider aus irgendeinem Grund nicht…

function newRow(){
document.getElementByName(‚function‘).value = ‚newRow‘;
}

und dann bei Button A

Button A

oder fehlt da hinter dem Javascriptaufruf ein return true damit der Browser das Formular normal abschickt ??

Hi Lianna,

function newRow(){
document.getElementByName(‚function‘).value = ‚newRow‘;
}

Die Funktion heißt getElement s ByName und gibt mehrere Elemente zurück (mehrere Felder auf derselben Seite dürfen den gleichen Namen haben). Für Deinen Zweck wäre wohl getElementById angebracht (die ID eines Elements muss pro Seite einzigartig sein).

also

 function newRow(){
 document.getElementById('function').value = 'newRow';
 }

und

...
 Button A

oder fehlt da hinter dem Javascriptaufruf ein return true
damit der Browser das Formular normal abschickt ??

Ohne ein return (onclick=„return newRow();“) wird das Abschicken nicht unterbunden, auch wenn die Funktion false zurückgeben würde (was in dieser Funktion gar nicht programmiert ist). Die Funktion wird vor dem Absenden einfach ausgeführt und dann abgeschickt, egal, was in der Funktion passiert. Als Kontrolle ist deshalb ein Ergebnis der Funktion und ein return keine schlechte Idee, wenn auch nicht unbedingt erforderlich.

Ciao
Rudy