Roger: Inputfeld übertragen, aber nur 1 mal

Hallo,

mir gelingt es nicht, den Wert eines Inputfeldes auf ein zweites Inüputfeld zu übertragen.

Frage 1: Welchen Eventhandler nutze ich hier am besten? Ich habe mich für "onblur" entschieden.
FRage 2: Was ist an meinem Ansatz falsch?

  
<input type=text name=\"Menge\" id=\"menge\" onblur="document.getElementById('menge').value=document.getElementById('menge2').value">  

So funktioniert es jedenfalls nicht.

Anschließend habe ich noch 2 weitere Fragen:

1a: Wie kann ich es schaffen, daß nach dem Laden der Seite nur beim ersten Auslösen des Eventhandlers der Event ausgelöst wird?
2a: Kann ich einbauen, daß menge2 >= menge sein _muß_?

Roger

  1. <input type=text name="Menge" id="menge" onblur="document.getElementById('menge').value=document.getElementById('menge2').value">

      
    Hier war noch ein bißchen php Maskierung mit drin.  
      
    ~~~javascript
      
    <input type=text name="Menge" id="menge" onblur="document.getElementById('menge').value=document.getElementById('menge2').value">  
    
    

    Roger

    1. <input type=text name="Menge" id="menge" onblur="document.getElementById('menge').value=document.getElementById('menge2').value">

        
      Wäre doch ne Idee wenn die Boxen in solchen Fällen die maximal verfügbare Breite einnehmen könnten?  
      
      
      1. Om nah hoo pez nyeetz, Encoder!

        <input type=text name="Menge" id="menge" onblur="document.getElementById('menge').value=document.getElementById('menge2').value">

        
        >   
        > Wäre doch ne Idee wenn die Boxen in solchen Fällen die maximal verfügbare Breite einnehmen könnten?  
          
        Hm. Ich denke eher, es ist den Postern zuzmuten, die Vorschau zur visuellen Verbesserung des Postings heranzuziehen.  
          
        Variante 1: einzeiliger Code  
          
        `<input type=text name="Menge" id="menge" onblur="document.getElementById('menge').value=document.getElementById('menge2').value">`{:.language-html}  
          
        Variante 2: Weglassen unwichtiger Attribute  
        ~~~html
        <input … onblur="document.getElementById('menge').value=document.getElementById('menge2').value">  
        
        

        Variante 3: Setzen zusätzlicher Umbrüche

        <input type=text name="Menge" id="menge"  
           onblur="document.getElementById('menge').value=document.getElementById('menge2').value">
        

        Außerdem wüsste ich auch nicht, wie dein Vorschlag umgesetzt werden könnte.

        Matthias

        --
        Der Unterschied zwischen Java und JavaScript ist größer als der zwischen Mars und Marschflugkörper.

        1. Ich denke eher, es ist den Postern zuzmuten, die Vorschau zur visuellen Verbesserung des Postings heranzuziehen.

          Da braucht aber jeder ein paar Posts bis er auf diese Idee kommt. Ok ich zumindest brauchte das :-)

          Dass es nicht geht ohne das Layout zu zerstören ist mir schon bewusst.
          Ich kenne diesen Effekt auch aus anderen Foren. Da kommt bei mir Firebug zum Einsatz wenn es mir wirklich wichtig ist. Box auswählen - Attribut für die Breite rauswerfen - fertig.

          Vielleicht würde ja ein einfacher unscheinbarer Button reichen mit dem man der Box das Attribut für die Breite ändern kann. Sieht dann zwar nicht mehr so schön aus wie vorher, aber wer das so wählt weiß das, der möchte Inhalt statt Schönheit :-)

          1. Moin,

            Ich denke eher, es ist den Postern zuzmuten, die Vorschau zur visuellen Verbesserung des Postings heranzuziehen.
            Da braucht aber jeder ein paar Posts bis er auf diese Idee kommt. Ok ich zumindest brauchte das :-)

            so unterschiedlich können die Gewohnheiten sein: Ich bin seit Urzeiten darauf "geeicht", eine Vorschau zu benutzen, wo immer eine angeboten wird, weil ich möchte, dass das, was ich da öffentlich in die Runde werfe, auch korrekt aussieht.
            Dass mir trotzdem manchmal was durchgeht, ist eine andere Sache. Tippfehler, ein "verlorenes" Wort, ein halfertig umformulierter Satz, bei dem Anfang und Ende nicht mehr zusammenpassen - oder halt auch mal ein kaputter Link.

            Ciao,
             Martin

            --
            F: Was ist wichtiger: Die Sonne oder der Mond?
            A: Der Mond. Denn er scheint nachts. Die Sonne dagegen scheint tagsüber, wenn es sowieso hell ist.
            Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
          2. Om nah hoo pez nyeetz, Encoder!

            Dass es nicht geht ohne das Layout zu zerstören ist mir schon bewusst.
            … Box auswählen - Attribut für die Breite rauswerfen - fertig.

            Das ist nicht trivial. Klüger wäre ohnehin, overflow in Verbindung mit max-height: none; auf visible zu setzen. Aber ob das wirklich hilfreich ist? Siehe beispielsweise https://forum.selfhtml.org/?t=217760&m=1496797

            Vielleicht würde ja ein einfacher unscheinbarer Button reichen mit dem man der Box das Attribut für die Breite ändern kann. Sieht dann zwar nicht mehr so schön aus wie vorher, aber wer das so wählt weiß das, der möchte Inhalt statt Schönheit :-)

            Das würde allerdings das HTML aufblähen oder wieder zusätzliches JavaScript erfordern, ohne dass sich ein adäquater Mehrwert ergibt.

            Matthias

            --
            Der Unterschied zwischen Java und JavaScript ist größer als der zwischen Boll und Bollerwagen.

        2. Hi,

          Variante 4: white-space: pre durch white-space: pre-wrap austauschen.

          K.A., ob das bei der Vielfalt an hier gepostetem Code als generelle Maßnahme „funktioniert“ und ob es nicht ggf. andere, neue Probleme schafft – aber vielleicht mal ausprobieren?

          MfG ChrisB

          --
          Autocomplete has spoiled me to a point where it happens every so often that I encounter a CAPTCHA, and I just type in the first character … and then wait for the rest of the code to be automatically suggested :/
          1. Om nah hoo pez nyeetz, ChrisB!

            Variante 4: white-space: pre durch white-space: pre-wrap austauschen.

            K.A., ob das bei der Vielfalt an hier gepostetem Code als generelle Maßnahme „funktioniert“ und ob es nicht ggf. andere, neue Probleme schafft – aber vielleicht mal ausprobieren?

            Ist in der devel-Ansicht drin. Mal schauen, ob es sich bewährt.

            Matthias

            --
            Der Unterschied zwischen Java und JavaScript ist größer als der zwischen Elf und Elfmetertöter.

  2. Hi,

    <input type=text name="Menge" id="menge" onblur="document.getElementById('menge').value=document.getElementById('menge2').value">

    
    > So funktioniert es jedenfalls nicht.  
      
    Du willst also, dass dieses Element beim verlieren des Fokus den Wert eines andere Feldes übernimmt?  
      
    
    > 1a: Wie kann ich es schaffen, daß nach dem Laden der Seite nur beim ersten Auslösen des Eventhandlers der Event ausgelöst wird?  
      
    Indem du den Eventhandler danach entfernst – was leichter ist, wenn du statt “old-school” Eventhandlern per HTML-Attributen „modernes“ Event-Management verwendest, wie es Libraries wie bspw. jQuery & Co. bieten.  
    (Oder in dem du dir ein Flag setzt, und damit den [beibehaltenen] Event-Handler bei nachfolgenden Ausführungen einfach „nichts“ machen lässt.)  
      
    
    > 2a: Kann ich einbauen, daß menge2 >= menge sein \_muß\_?  
      
    Ja, kannst du. (Wenn du kannst.)  
      
    MfG ChrisB  
      
    
    -- 
    Autocomplete has spoiled me to a point where it happens every so often that I encounter a CAPTCHA, and I just type in the first character … and then wait for the rest of the code to be automatically suggested :/
    
  3. Ich hoffe, wenigsten "Ihr" seid zufrieden mit diesem Thread.

    Roger

    1. Hallo

      Ich hoffe, wenigsten "Ihr" seid zufrieden mit diesem Thread.

      1. Du hast eine zielführende Antwort bekommen.
      2. Wenn danach etwas unklar bleibt, frage nach.
      3. Threaddrift gehört hier her.

      Tschö, Auge

      --
      Verschiedene Glocken läuteten in der Stadt, und jede von ihnen vertrat eine ganz persönliche Meinung darüber, wann es Mitternacht war.
      Terry Pratchett, "Wachen! Wachen!"
      ie:{ fl:| br:> va:) ls:[ fo:) rl:( ss:| de:> js:| zu:}
      Veranstaltungsdatenbank Vdb 0.3