micom: forms

Hallo zusammmen,

ich habe ein kleine problem mit einem form, ich habe ein checkbox die in abhängigkeit zu drei eingabe textfelder stehen soll, ist die checkbox nicht selektiert sollen die drei felder sichtbar, aber für eingabe gesperrt sein, bei selektion sollen sie eben zur eingabe frei sein, kann mir jemand sagen wo ich dazu was finden kann, das gleiche auch für option menus in forms, abhängig von der ausgwählten option gesperrte oder freie eingabe felder.

Danke Mike

  1. Hallo micom,

    schau in Selfhtml unter Elemente ausgrauen

    Gruß,

    Dieter

    1. soweit so gut, aber wie sage ich jetzt dem feld das es nur bei nicht selektierter checkbox/radiobutton disabled sein soll ??

      Gruß Mike

      Hallo micom,

      schau in Selfhtml unter Elemente ausgrauen

      Gruß,

      Dieter

      1. Hallo micom,

        wie sage ich jetzt dem feld das es nur bei nicht selektierter checkbox/radiobutton disabled sein soll

        Das geht nur mit Javascript, und zwar etwa so:
        in der Checkbox rufst du eine Funktion ausgrauen() oder sowas auf mit
        onclick="ausgrauen(this)"
        Dazu schreibst du eine passende Funktion
        function ausgrauen(sender)// sender ist in dem Fall die Checkbox
        {
          var textfeld = document.getElementById(meinTextfeld)// eben die ID von dem Textfeld
          var textfeld2......
          //ueberpruefe, ob die Checkbox gerade gescheckt oder ungecheckt wurde:
          if(sender.checked == 'checked')//wenn gecheckt
          {
            textfeld.setAttribute('disabled', 'true','false');
            textfeld2.dis....
          }
          else
          {
            textfeld.setAttribute('disabled', 'false','false');
            textfeld2.dis....
          }
        }
        naeheres siehe SelfHTML setAttribute

        Gruß,

        Dieter

        1. danke, ich probiers mal

          Gruß Mike

          Hallo micom,

          wie sage ich jetzt dem feld das es nur bei nicht selektierter checkbox/radiobutton disabled sein soll
          Das geht nur mit Javascript, und zwar etwa so:
          in der Checkbox rufst du eine Funktion ausgrauen() oder sowas auf mit
          onclick="ausgrauen(this)"
          Dazu schreibst du eine passende Funktion
          function ausgrauen(sender)// sender ist in dem Fall die Checkbox
          {
            var textfeld = document.getElementById(meinTextfeld)// eben die ID von dem Textfeld
            var textfeld2......
            //ueberpruefe, ob die Checkbox gerade gescheckt oder ungecheckt wurde:
            if(sender.checked == 'checked')//wenn gecheckt
            {
              textfeld.setAttribute('disabled', 'true','false');
              textfeld2.dis....
            }
            else
            {
              textfeld.setAttribute('disabled', 'false','false');
              textfeld2.dis....
            }
          }
          naeheres siehe SelfHTML setAttribute

          Gruß,

          Dieter

        2. noch ne frage, entschuldige bitte, aber mein JS kenntnisse sind sehr bescheiden:

          function ausgrauen(sender)// sender ist in dem Fall die Checkbox
          {
            var textfeld = document.getElementById(meinTextfeld)// eben die ID von dem Textfeld
            var textfeld2......
            //ueberpruefe, ob die Checkbox gerade gescheckt oder ungecheckt wurde:
            if(sender.checked == 'checked')//wenn gecheckt
            {
              textfeld.setAttribute('disabled', 'true','false');
              textfeld2.dis.... << ???? disabled/enabled ??
            }
            else
            {
              textfeld.setAttribute('disabled', 'false','false');
              textfeld2.dis.... << ???? disabled/enabled ??
            }
          }

          Danke Mike

          1. Hallo micom,

            noch ne frage, entschuldige bitte, aber mein JS kenntnisse sind sehr bescheiden:

            Kein Problem
            Lt. Ausgangsposting wolltest du doch mehrere Felder disablen. Du ordnest also jedem der Felder in HTML eine ID zu und in JS eine Variable:
            HTML
            <input type="text" id="meinTextfeld1" />
            <input type="text" id="meinTextfeld2" /> usw.

            JS
            var textfeld1 = document.getElementById(meinTextfeld1)  // 1. Textfeld
            var textfeld2 = document.getElementById(meinTextfeld2)  // 2. Textfeld usw.

            Innerhalb if(sender.checked == 'checked')behandelst Du dann jedes Feld (das jetzt ja durch eine Variable repraesentiert wird) mit disabled true bzw. false, je nachdem, was du machen willst

            textfeld1.setAttribute('disabled', 'true','false');  // Setzt Textfeld 1 auf disabled
              textfeld2.setAttribute('disabled', 'true','false'); // Setzt Textfeld 2 auf disabled usw.

            falls die Checkbox nicht gecheckt ist:
            else
            {
              //setzt du disabled auf false, also den 'Normalzustand'
              textfeld1.setAttribute('disabled', 'false','false');  // setzt Textfeld 1 auf 'normal'
              textfeld2.setAttribute('disabled', 'false','false'); // setzt Textfeld 2 auf 'normal' usw.

            Gruß,

            Dieter

            1. jetzt hab auch ich depp das begriffen, VIELEN DANK !!!!

              Gruß Mike

              1. Hallo micom,

                jetzt hab auch ich depp das begriffen, VIELEN DANK !!!!

                Hat ja niemand gesagt, dass einem alles in den Schoss faellt, da muss man nicht gleich ein Depp sein. Ich bin aber, ehrlich gesagt, froh ueber jeden, der sich die Muehe macht, etwas zu verstehen, das ist fuer mich schliesslich auch ein Erfolgserlebnis.

                Gruß,

                Dieter