Katharina: onsubmit() wird im Firefox nicht ausgeführt

Beitrag lesen

Hallo,

ich habe ein HTML Formular mit mehreren Input Feldern sowie einem Submit Button. Die Werte in den Inputfeldern sollen über die Funktion onsubmit() abgesendet werden. Falls noch die Default-Werte in den Input Feldern stehen, soll '' übertragen werden (die Default-Werte sollen allerdings anschließend wieder in den entsprechenden Input Feldern stehen). Das Ganze passiert in folgender Javascript Methode:

function FormHandler() {

this.submitWithoutDefaultParams = function(event) {
    var formelement = event.target;

var def = new Array();
    for(var i=0; i<formelement.elements.length; i++)
    {
      if ((formelement.elements[i].type == 'text') && (formelement.elements[i].value == formelement.elements[i].defaultValue))
       {
        def[i] = true;
        formelement.elements[i].value = '';
        pwdLogger.log('Input'+i+': -'+formelement.elements[i].value+'-');
      }
      else
        def[i] = false;
    }

// Formular absenden
    formelement.submit();

// Defaultparameter wieder herstellen, falls nötig
    for(var i=0; i<formelement.elements.length; i++)
    {
      if (def[i] == true) {
        formelement.elements[i].value = formelement.elements[i].defaultValue;
       }
    }
    return false;
  }

this.clearOnClick = function(event)
  {
    var inputobj = event.target;
    if(inputobj.value == inputobj.defaultValue)
    {
      inputobj.value = '';
    }
  }
}

var formHandler = new FormHandler();

Der EventHandler onsubmit wird dynamisch per Javascript an das Formular angehängt. Dazu wird die bind() Funktionalität aus dem Prototype Framework verwendet.

Beim Klick auf den submit-Button führt der IE die JS Methode auch richtig aus, der Firefox meldet auch keine Fehler, lediglich die Zeile formelement.submit() wird nicht ausgeführt.

Wer kann mir weiterhelfen?