Frank0837: input und focus()

Hallo Forum,

diesen Tag verstehe ich nicht:
 <input type=text name="dateiname" size=30 focus() value="<?php  echo $dateiname;" ?>

Nach dem, was ich in SELFHTML über <input> und focus() lese, müsste dieses Eingabefeld eigentlich beim Laden den Fokus erhalten. Das ist aber nicht der Fall.

Lese ich da etwas falsch? Verwendet wird MS5.5 und NS7.

Kann mir das jemand erklären?

Einen schönen Abend wünsche ich

Frank

  1. Huhu, korrekterweise solltest du folgendes Snippet einfügen

    <script>
    function t(){
    document.all.FORMNAME.INPUTNAME.focus();
    }
    t();
    </script>

    Ciao Sascha

    1. Hi,

      Huhu, korrekterweise solltest du folgendes Snippet einfügen

      Nein, das ist nicht korrekt.

      <script>

      Hier fehlt das type-Attribut.

      function t(){
      document.all.FORMNAME.INPUTNAME.focus();

      und das all sorgt allenfalls dafür, daß alle Browser außer dem IE eine Fehlermeldung werfen, das ist total überflüssig.

      }
      t();
      </script>

      cu,
      Andreas

      --
      Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
  2. hallo Frank,

    Nach dem, was ich in SELFHTML über <input> und focus() lese, müsste dieses Eingabefeld eigentlich beim Laden den Fokus erhalten. Das ist aber nicht der Fall.

    Dann hast du nicht richtig gelesen. Mit der Javascript-Anweisung "focus()" kannst du ein ganzes _Fenster_ in den Vordergrund rücken, nicht aber ein Element wie ein Eingabenfeld

    Lese ich da etwas falsch? Verwendet wird MS5.5 und NS7.

    Falsch gelesen ja, Browser sind (fast) egal

    Kann mir das jemand erklären?

    Lies noch einmal gründlich in SelfHTML nach

    Grüße aus Berlin

    Christoph S.

    1. Hi,

      Nach dem, was ich in SELFHTML über <input> und focus() lese, müsste dieses Eingabefeld eigentlich beim Laden den Fokus erhalten. Das ist aber nicht der Fall.
      Dann hast du nicht richtig gelesen. Mit der Javascript-Anweisung "focus()" kannst du ein ganzes _Fenster_ in den Vordergrund rücken, nicht aber ein Element wie ein Eingabenfeld

      Falsch, jedes fokussierbare Element kann mit focus() den Fokus bekommen.
      Aber es ist natürlich kompletter Unsinn, einfach irgendwo in ein Element focus() reinzuschreiben...

      cu,
      Andreas

      --
      Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
      1. hallo Andreas,

        jedes fokussierbare Element kann mit focus() den Fokus bekommen.

        Du beziehst dich auf http://selfhtml.teamone.de/javascript/objekte/elements.htm#focus, wo man nachlesen kann:
        "Anwendbar auf:
          Klick-Buttons
          Checkboxen
          Felder für Datei-Upload
          Versteckte Elemente
          Passwort-Felder
          Radio-Buttons
          Abbrechen-Buttons
          Absenden-Buttons
          einzeilige Eingabefelder
          mehrzeilige Eingabefelder"

        Ich hatte zunächst  http://selfhtml.teamone.de/javascript/objekte/window.htm#focus im Kopf, vielleicht auch, weil ich zeitlich unmittelbar grade mit [pref:t=36174&m=197643] beschäftigt war

        Aber es ist natürlich kompletter Unsinn, einfach irgendwo in ein Element focus() reinzuschreiben...

        Grüße aus Berlin

        Christoph S.

        1. Hallo Christoph,

          jedes fokussierbare Element kann mit focus() den Fokus bekommen.
          "Anwendbar auf:

          ...

          Absenden-Buttons
            einzeilige Eingabefelder
            mehrzeilige Eingabefelder"

          Was habe ich nun gelernt? Kann man einem einzeiligen Feld mit focus() im input-Tag der Fokus geben?

          Ich stehe immer noch auf dem Schlauch. JS will ich auf dieer Seite nicht haben.

          Frank

          1. hi,

            Was habe ich nun gelernt?
            JS will ich auf dieer Seite nicht haben.

            Wenn du kein Javascript haben willst, kannst du "focus()" auch nicht einsetzen.

            Christoph S.