Larz: Focus Problem

Hi Leute...

ich hab hier ein kleines miniformular welches ich mit javascript auswerte
und bei richtiger eingabe über ajax an php schick.

  
Nickname: <input type="text" name="Nick"  ><br>  
EMail: <input type="text" name="Email" ><br>  
PLZ:   <input type="text" name="Plz" ><br>  
<input type="button" value="Abschicken" onlick="RegisterUser('Validate')">		  

Dieses kleine formular wird in einem template eingebettet auch wieder über ajax. also javascipt hohlt sich dieses html-fragment und fügt es an einem tagelement im template an. funktioniert alles wunderbar.

so jetzt kommt aber der witz. der tabindex funktioniert wunderbar. klick ich aber mit der maus z.B. ins textfeld email springt er gleich wieder auf nick (auch wenn im nickfeld etwas steht). das kapier ich einfach ndemicht. ich mach nix mit focus oder onblur ich kopier lediglich das html-fragment in mein template über javascript ein. trotzdem springt er immer wieder ins textfeld nickname rein... mmmmmmh ich find nix im internet und irgendwie kann ich mir das überhaupt nicht erklären.
habs bisher nur mit ff getestet da ich nur mit linux arbeite.

wenn irgend jemand ne idee hat bitte posten... das macht mich wahnsinnig.

  1. Hi,

    Nickname: <input type="text" name="Nick"  ><br>
    EMail: <input type="text" name="Email" ><br>
    PLZ:   <input type="text" name="Plz" ><br>
    <input type="button" value="Abschicken" onlick="RegisterUser('Validate')">

      
    über die - meiner Ansicht nach widersinnigen - <br> könnte man ja noch hinwegsehen. Den Umstand, dass das ganze ohne JavaScript nicht funktioniert, könnte man verknusen. Den Pornoseiten-Tippfehler beim Event-Handler kann man mit einem Grinsen quittieren. Aber warum um alles in der Welt ist da nicht ein einziges <label>-Element?  
      
    
    > klick ich aber mit der maus z.B. ins textfeld email springt er gleich wieder auf nick (auch wenn im nickfeld etwas steht). das kapier ich einfach ndemicht. ich mach nix mit focus oder onblur ich kopier lediglich das html-fragment in mein template über javascript ein.  
      
    Das heißt Du ersetzt das bestehende HTML-Fragment durch ein neues? Wieso wunderst Du Dich da, dass ein Fokus, der im alten Fragment vorlag, anschließend nicht existiert?  
      
    Cheatah  
    
    -- 
    X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|  
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html  
    X-Will-Answer-Email: No  
    X-Please-Search-Archive-First: Absolutely Yes
    
    1. Hallo Cheatah!

      Den Pornoseiten-Tippfehler beim Event-Handler kann man mit einem Grinsen quittieren

      Was Du alles siehst, echt!

      Aber warum um alles in der Welt ist da nicht ein einziges <label>-Element?

      Wenn der Tippfehler bleibt, viellecht <la Belle>?

      *SCNR*

      Viele Grüße aus Frankfurt/Main,
      Patrick

      --
      _ - jenseits vom delirium - _

         Diblom   [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
      J'ai 10 ans! | Achtung Agentur! | Nichts ist unmöglich? Doch! | Heute schon gegökt?
      1. Hallo,

        »» Aber warum um alles in der Welt ist da nicht ein einziges <label>-Element?
        Wenn der Tippfehler bleibt, viellecht <la Belle>?

        oder <labello> - auch damit wären wir mit dem von Cheatah reklamierten Tippfehler weitgehend konform. ;-)

        *SCNR*

        Ebenso,
         Martin

        --
        Lieber Blödeleien als blöde Laien.
    2. oha sry....

      jo ok der ponolick fehler wär mir später au noch aufgefallen ^^
      Das mit den Labels steht erst ma für mich nicht zur debatte da das
      design und die optik erst kommt wenn ma alles funzen sollte.

      Aber im endefekt tu ich nichts ersetzen ich füge ein.
      Also angenommen ich hab ein template mit:

        
      <div id="content></div>  
      
      

      Dann hohl ich mir mein miniformular mit Ajax und bette den html code
      im div element ein mit:

        
      var miniform=http.responseText;  
      var div = document.getElementById("content");  
      div.innerHTML=miniform;  
      
      

      So das wars auch schon und funktioniert was die darstellung angeht wunderbar.
      bloß hab ich das problem das der focus auf den nickname eintrag festgefressen ist. click ich in email eintrag switcht der cursor gleich wieder auf den nick...

      *RATLOS*

      1. Hi,

        Das mit den Labels steht erst ma für mich nicht zur debatte da das
        design und die optik erst kommt wenn ma alles funzen sollte.

        HTML hat *nichts* mit Design und Optik zu tun.

        Aber im endefekt tu ich nichts ersetzen ich füge ein.

        Dann habe ich Dein Problem falsch verstanden. Bitte erkläre es detaillierter, am besten unterstützt durch einen Link auf die Seite, auf der es betrachtet werden kann.

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. Hi,

          »» Das mit den Labels steht erst ma für mich nicht zur debatte da das
          »» design und die optik erst kommt wenn ma alles funzen sollte.

          HTML hat *nichts* mit Design und Optik zu tun.

          »» Aber im endefekt tu ich nichts ersetzen ich füge ein.

          Dann habe ich Dein Problem falsch verstanden. Bitte erkläre es detaillierter, am besten unterstützt durch einen Link auf die Seite, auf der es betrachtet werden kann.

          Cheatah

          Sorry aber ich habs nur lokal auf meiner Maschine...kein DynDns oder sonstiges.
          Also gut dann versuch ich ma soweit wie es geht alles relevante zu posten:

          Fangen wir mit dem Template an:

            
          <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
          <html>  
          <head>  
          <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  
          <script type="text/javascript" src="JScripts/Basis.js"></script>  
          <title>Insert title here</title>  
          </head>  
          <body>  
          <div id="Navi"></div>  
          <div id="Content"></div>  
          </body>  
          </html>  
          
          

          So hier das Html-Fragment "Register.html" was mit "innerHTML" in das div-Tag mit der id "Content" per Javascript eingefügt wird:

            
          Nickname: <input type="text" name="Nick" ><label name="Nick"></label><br>  
          EMail: <input type="text" name="Email" > <label name="EMail"></label><br>  
          PLZ:   <input type="text" name="Plz" > <label name="Plz"></label><br>  
          Passwort: <input type="password" name="Password"><label name="Password"></label><br>  
          <input type="button" value="Abschicken" onclick="RegisterUser('Validate')">	  
          
          

          So jetzt kommt noch das Javascript bzw. die Funktion welche das Html-Fragment in mein Template einfügt:

            
          function DisplayRegister()  
          {  
          	if(http.readyState==4)  
          	{  
          		var form=http.responseText;  
          		var div = document.getElementById("content");  
          		div.innerHTML = form;  
                  }  
          }  
          
          

          Soweit so gut....

          Das alles funktioniert einwandfrei. Mein Template wird somit erweitert mit
          dem Html-Fragment. Per Tabindex kann ich dieses Login-Formular schön sauber "durchtabben".
          Das einzigste Problem ist jetzt nur wenn ich mit dem Mauszeiger in das EMail-Textfeld klick er sofort wieder in das Nick-Textfeld zurückspringt.
          Für mich leider nicht einleuchtend....

          Wie ihr sehen könnt wird hier kein focus() onblur() oder sonst irgendwas benutzt was diesen seltsamen Effekt hervor rufen könnte.

          P.S. ich weiß selber das der Html-Code scheisse für manchen aussieht aber darum geht es mir erstma nich... Mir gehts um die Funktion und die ist soweit gegeben bis auf die Scheisse mit dem focus.

          MFG

      2. Mahlzeit Larz,

        jo ok der ponolick fehler wär mir später au noch aufgefallen ^^
        Das mit den Labels steht erst ma für mich nicht zur debatte da das
        design und die optik erst kommt wenn ma alles funzen sollte.

        [ ] Du hast verstanden, wozu <http://de.selfhtml.org/html/formulare/strukturieren.htm#label@title=<label>>-Elemente da sind.

        bloß hab ich das problem das der focus auf den nickname eintrag festgefressen ist. click ich in email eintrag switcht der cursor gleich wieder auf den nick...

        Vielleicht liegt es daran, dass die von Dir genutzte Funktion "RegisterUser('Validate')" irgendwie IMMER das Eingabeelement mit dem Namen "Nick" fokussiert?

        MfG,
        EKKi

        --
        sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
        1. Hi,

          [ ] Du hast verstanden, wozu <http://de.selfhtml.org/html/formulare/strukturieren.htm#label@title=<label>>-Elemente da sind.

          Schau Dir https://forum.selfhtml.org/?t=183433&m=1215005 an, und Du weißt, daß Larz das Hakerl (noch) nicht setzen darf.

          cu,
          Andreas

          --
          Warum nennt sich Andreas hier MudGuard?
          O o ostern ...
          Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
          1. Mahlzeit MudGuard,

            »» [ ] Du hast verstanden, wozu <http://de.selfhtml.org/html/formulare/strukturieren.htm#label@title=<label>>-Elemente da sind.

            Schau Dir https://forum.selfhtml.org/?t=183433&m=1215005 an, und Du weißt, daß Larz das Hakerl (noch) nicht setzen darf.

            Genau deswegen habe ich den Haken ja auch (noch) nicht gesetzt ... :-)

            MfG,
            EKKi

            --
            sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
    3. <input type="button" value="Abschicken" onlick="RegisterUser('Validate')">

      Den Pornoseiten-Tippfehler beim Event-Handler kann man mit einem Grinsen quittieren.

      Keine Angst, die User werden das sicher befolgen: Lick to buy!

      --
      Reden ist Silber, Schweigen ist Gold, meine Ausführungen sind Platin.
      Self-Code: sh:( ch:? rl:( br:> n4:( ie:{ mo:) va:) de:> zu:} fl:| ss:| ls:~ js:|
  2. Problem gelöst.... Thread kann geschlossen werden....

    1. Mahlzeit Larz,

      Problem gelöst.... Thread kann geschlossen werden....

      Hier wird nichts geschlossen. Und für die (zukünftigen) Leser und das Archiv wäre es hilfreich, wenn Du auch beschreibst, WIE Du das Problem gelöst hast.

      MfG,
      EKKi

      --
      sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
      1. » Problem gelöst.... Thread kann geschlossen werden....

        Hier wird nichts geschlossen. Und für die (zukünftigen) Leser und das Archiv wäre es hilfreich, wenn Du auch beschreibst, WIE Du das Problem gelöst hast.

        War sicher nur ein Tippfehler.

        Struppi.