Ankündigung

Einklappen
Keine Ankündigung bisher.

Onfocus simulieren

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Onfocus simulieren

    Heyho,

    folgendes Problem habe ich:
    Ich habe 2 Input Felder, für die Passworteingabe. Warum 2, erkläre ich gleich.
    Im ersten (type="text"), steht als value nur "Passwort", im zweiten (type="password"), steht gar nichts und ist unsichtbar.
    Wird auf das erste Input Feld geklickt, wird mit Javascript das Feld unsichtbar und das 2. sichtbar.
    Nun ist der Focus aber nicht auf das 2. Feld gesetzt, sodass, wenn ich etwas eintippe, es nirgendswo verwertbar steht.

    Ich habe mir diese Methode ausgedacht, da es mit jQuery nicht möglich ist, das type Attribut zu ändern. (Siehe hier und hier)

    Hat jemand eine Idee, wie ich das 2. Passwortfeld "aktiviere", wenn ich jedoch auf das 1. Feld klicke?

    Ich hoffe, ich konnte es verständlich erklären und danke schonmal im vorraus. :P

    Gruß,
    Lithium


  • #2
    Das Problem ist nicht jQuery, sondern der IE, in dem sich der Typ von Formularfeldern nicht ändern lässt.

    Und die Methode focus hast du nicht gefunden, als du versucht hast, dich selber zu informieren ...?

    (Darüber hinaus kann man das natürlich auch sinnvoller ohne ein zweites Inputfeld lösen. Bsp.: Transparenter Hintergrund, Text (bspw. LABEL) einfach dahinter platziert - bei hover/focus dann Hintergrundfarbe setzen - fertig.)

    Kommentar


    • #3
      Zitat von ChrisB Beitrag anzeigen
      Das Problem ist nicht jQuery, sondern der IE, in dem sich der Typ von Formularfeldern nicht ändern lässt.
      Richtig, aber folglich wurd es in jQuery dann deaktiviert.
      if(b in a&&f&&!j){if(e){b==="type"&&ab.test(a.nodeName)&&a .parentNode&&c.error("type property can't be changed");a[b]=d}
      Aus der jquery.js mal herauszitiert. Folglich liegt es letzten endes doch an jQuery.

      Wie dem auch sei, wir sind hier ja nicht um genau das zu diskutieren sondern etwas anderes:

      Selbstverständlich habe ich mich über die Methode focus informiert und auch schon 2-3 verschiedene Sachen probiert - leider vergebens.

      Die Idee mit dem Label und dem transparenten Hintergrund gefällt mir - da wäre ich jetzt ehrlich gesagt nie von selbst drauf gekommen. Danke dir!

      Gruß,
      Lithium

      Kommentar


      • #4
        Seltsam, einerseits extrahierst Du kryptischen Code aus der JQuery Lib, wo man denkt: "Der Bursche hat die volle Checkung" und andererseits kommst Du nicht auf sowas wie
        Code:
        document.getElementById('DasZweiteFeld').focus();
        Dies natürlich dem onclick-Ereignis Deines ersten Feldes zugeordnet.
        Es ist schon alles gesagt. Nur noch nicht von allen.

        Kommentar


        • #5
          Naja, es war spät, ich war schon lange wach und auch ein wenig unkonzentiert. Habe ich aus den Ergebnisen eine Stunde später auch extrem gemerkt - wurde sehr unproduktiv. Aber ich will mich jetzt auch nirgends herausreden, die Variante mit dem .focus(); wusste/kannte ich wirklich nicht.

          Ich habe an folgendem die ganze zeit rumprobiert:
          Code:
          document.getElementById('DasZweiteFeld').focus = true;
          Naja, hab halt versucht, dem focus ein true zuzuweisen...

          Greets

          Kommentar


          • #6
            die Variante mit dem .focus(); wusste/kannte ich wirklich nicht.
            Vielleicht solltest Du dann nochmal einen Schritt zurückgehen und wenigstens ein paar Brocken Javascript lernen, bevor Du jQ einsetzt.
            --

            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
            Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


            --

            Kommentar

            Lädt...
            X