tdmf: !!! Wertübergabe bei JS-Funktion !!!

Hallo,

erstelle gerade verschiedene Funktionen zum überprüfen von Eingabeformularen.

Allerdings funktioniert die Übergabe des Wertes and die Funktion nicht so wie geplant - die if-Funktion kann offensichtlich nicht mit dem übergebenen Wert anfangen.

document.write(str); gibt in Safari nichts - im Explorer den richtigen String aus.......

Ohne Wertübergabe an die Funktion und direkter Auswahl des Form-Feldes 'textfield' funktioniert alles einwandfrei.

function checkMulti(theVar){
  var str = "document.myForm."+theVar+".value";
  var filter=/^w{3}.[a-z-]{3,}.[a-z]{2,4}$/    //regex Funktion läuft einwandfrei
  if (filter.test(str)){                         // hier hakt es
   alert('Passt !')
   return true;
  }else{
   alert('NOPE')
   document.write(str);
   return false;

}
}

checkMulti('textfield');

Vielen Dank für Tips !

tdmf

  1. Hallo,

    var str = "document.myForm."+theVar+".value";

    Das geht so nicht.

    Um die Objektreferenz zu erhalten solltest du die Methoden getElementsByName() oder getElementByID() verwenden. Siehe SelfHTML...

    Gruß,
    MrWurf

    1. du meinst so ?

      var str = "document.myForm."+ document.getElementsByName(str) +".value";

      1. du meinst so ?

        var str = "document.myForm."+ document.getElementsByName(str) +".value";

        nein, lies mal hier: http://de.selfhtml.org/javascript/objekte/document.htm#get_element_by_id

        Gruß,
        MrWurf

        1. alles klar ;)

          ich dank Dir !

    2. Hallo,

      var str = "document.myForm."+theVar+".value";
      Das geht so nicht.

      Um die Objektreferenz zu erhalten solltest du die Methoden getElementsByName() oder getElementByID() verwenden. Siehe SelfHTML...

      Was habt ihr immer mit den generischen DOM-Methoden? Seit Ewigkeiten existiert folgende Vorgehensweise:

      var str = document.myForm[theVar].value;

      Oder:

      var str = document.forms['myForm'].elements[theVar].value;

      Und so weiter. Diese Methoden sind hinsichtlich ihrer Zuverlässigkeit nahezu bombensicher.
      http://de.selfhtml.org/javascript/objekte/forms.htm
      </archiv/2004/5/81844/#m476312>
      </archiv/2003/12/66415/#m379197>

      Mathias