thomas: in Textfelder cursor bestimmen

Hallo zusammen,

folgendes problem. ich habe eine website programmiert bei welcher man sich einloggen muss, sprich auf der startseite hat es zwei textfelder (name und pw). meine frage, kann man irgendwie sagen, dass der cursor automatisch im ersten (also name) ist. standartmässig ist er gar nirgends. dies wäre für meine kollegen wesentlich einfacher, da sie nicht immer zuerst in das entsprechende feld klicken müssen.

leider gibt google diesesmal keine brachbare antwort.

gruss thomas

  1. »»...dass der cursor automatisch im ersten (also name) ist. standartmässig ist er gar nirgends. dies wäre für meine kollegen wesentlich einfacher, da sie nicht immer zuerst in das entsprechende feld klicken müssen.

    Schau die mal Javascript und dann den Befehl onFocus() an.

    Gruß,
    Thorsten F.

    1. »»...dass der cursor automatisch im ersten (also name) ist. standartmässig ist er gar nirgends. dies wäre für meine kollegen wesentlich einfacher, da sie nicht immer zuerst in das entsprechende feld klicken müssen.

      Schau die mal Javascript und dann den Befehl onFocus() an.

      Nicht ganz. Das "on" steht für ein Event, d.h. der Code wird ausgeführt, wenn der User das Feld selbst selectiert. Siehe meine andere Antwort.

      Gruß,
      Thorsten F.

      Ebenfalls Gruß
      Stefano Albrecht

  2. javascript: focus(); und blur();

    Freundliche Grüße und ein schönes Wochenende
    Stefano Albrecht

  3. Hi,

    meine frage, kann man irgendwie sagen, dass der cursor automatisch im ersten (also name) ist.

    Da gibt es eine JS lösung, eine andere ist mir nicht bekannt. Hatte
    selbiges problem auch und daher sollte dir eine suche im archiv nach
    FOCUS und JS helfen. finde die datei gerade nicht in der der code ist.

    MfG

  4. n'abend,

    folgendes problem. ich habe eine website programmiert bei welcher man sich einloggen muss, sprich auf der startseite hat es zwei textfelder (name und pw). meine frage, kann man irgendwie sagen, dass der cursor automatisch im ersten (also name) ist. standartmässig ist er gar nirgends. dies wäre für meine kollegen wesentlich einfacher, da sie nicht immer zuerst in das entsprechende feld klicken müssen.

    php ist serverseitig... und hat somit nichts mit deinem anliegen zu tun.
    das lässt sich per JavaScript lösen...

    zunächst solltest du deien input-feldern das attribut  tabindex="1" hinzufügen. also bei usernamen  tabindex="1", bei passwort  tabindex="2".

    dieser JS-code stammt von google (/adsense)
    <script type="text/javascript"><!--

    for(var i = 0; i < document.forms.length; ++i) {
          var obj = document.forms[i].elements["username"];
          if (obj) {
            if (obj.length) { obj = obj[0]; }
            if (obj.focus) { obj.focus(); }
          }
        }
      //--> </script>

    und dürfte den focus richtig setzen ;)
    (auch wenn es reichlich unnötig ist hier ein array zu durchlaufen, statt das objekt direkt aufzurufen...)

    weiterhin schönen abend...

    --
    wer braucht schon großbuchstaben?
  5. Hallo Thomas,

    folgendes problem. ich habe eine website programmiert bei welcher man sich einloggen muss, sprich auf der startseite hat es zwei textfelder (name und pw). meine frage, kann man irgendwie sagen, dass der cursor automatisch im ersten (also name) ist.

    Du brauchst focus() in Kombination mit onload.

    dies wäre für meine kollegen wesentlich einfacher, da sie nicht immer zuerst in das entsprechende feld klicken müssen.

    die Tab-Taste tut es idR auch :-)

    leider gibt google diesesmal keine brachbare antwort.

    doch - die Startseite von Google verwendet genau das :-)

    Grüße aus Nürnberg
    Tobias

    1. n'abend,

      Hallo Thomas,

      folgendes problem. ich habe eine website programmiert bei welcher man sich einloggen muss, sprich auf der startseite hat es zwei textfelder (name und pw). meine frage, kann man irgendwie sagen, dass der cursor automatisch im ersten (also name) ist.
      Du brauchst focus() in Kombination mit onload.

      das mit dem <body onload="..."> würde ich mal sein lassen...
      kann bei bestimmten browsern (erfahrungsgemäß) zu problemen führen, weil das objekt nicht gefunden werden konnte... besser ist

      [...]
      <form name="login" id="login" action="..." method="...">
      <input type="text" name="username" id="username" tabindex="1">
      <script type="text/javascript">document.getElementById('username').focus();</script>
      [...]

      weiterhin schönen abend...

      --
      wer braucht schon großbuchstaben?
      1. Tag,

        n'abend,

        [...]

        das mit dem <body onload="..."> würde ich mal sein lassen...
        kann bei bestimmten browsern (erfahrungsgemäß) zu problemen führen, weil das objekt nicht gefunden werden konnte... besser ist

        es ist vielleicht möglich bei solchen Behauptungen etwas genauer zu werden.

        1. Welche Browser?
        2. Wie schaut der Fehler aus?
        3. Ich teile meine Erfahrungen mit Anderen.

        Ich finde eher Deine Methode bedenklich. Zu der Zeit, wo Du den Fokus setzen willst ist eben nicht garaniert, daß das Element schon dargestellt ist und die Methode focus() einen Fehler wirft.

        IMO ist es auf alle Fälle besser den Fokus erst "onload" zu setzen.

        Grüße,
        Steffen.

      2. Hallo globe (der aus dem HE-Board?),

        das mit dem <body onload="..."> würde ich mal sein lassen...
        kann bei bestimmten browsern (erfahrungsgemäß) zu problemen führen,

        welchen Browsern?

        weil das objekt nicht gefunden werden konnte...

        wenn onload "feuert", sind alle Elemente geladen - trotzdem sollte man natürlich immer auf Existenz der verwendeten Objekte prüfen.

        <script type="text/javascript">document.getElementById('username').focus();</script>

        ich würde eher document.forms['login'].elements['username'].focus(); verwenden - das verstehen auch ältere Browser.

        Grüße aus Nürnberg
        Tobias aka tk