Anzeige:
Ergebnis 1 bis 12 von 12

Thema: Aktives Eingabefeld farblich abheben ?

  1. #1
    Registrierter Benutzer
    Registriert seit
    08.12.2002
    Ort
    Maria Thann
    Beiträge
    176

    Aktives Eingabefeld farblich abheben ?

    Gibt es per CSS etc. die Möglichkeit, dass das aktive
    Eingabefeld z.B. einen anderen Hintergrund hat als die
    anderen Formularfelder ?

    Torsten.E

  2. #2
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    hier gibt es verschiedene Möglichkeiten. Die beste Version ist eine Kombination von PHP, CSS und javascript! Hier mal der Stylesheet.
    PHP-Code:
    <input length="80" type="text" name="??" onMouseOut="this.style.backgroundColor='#FFFFFF';" onMouseDown="this.style.backgroundColor='#000000';" /> 

  3. #3
    Registrierter Benutzer
    Registriert seit
    08.12.2002
    Ort
    Maria Thann
    Beiträge
    176

    und wie schaut die CSS dazu aus

    kannst du mir die CSS dazu gerade auch noch geben,
    dann kann ich nämlich einbauen.

    DANKE

    Torsten.E

  4. #4
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Nein - Warum ? Er ist schon vorhanden, du hast dir auch nicht die mühe gemacht den Code zu verstehen, warum soll ich dann als Melkmaschine dienen? Generell - ich zeige dir gerne den Weg wie du an deine Info kommst um dein Problem zu lösen, du kannst auch fragen bezüglich des Code machen die ich dir gerne beantworten werde, jedoch mache ich nicht deine Arbeit, wenn du dies nicht möchtest dann schreibe es und ich brauche dir nicht mehr zu Antworten.
    gruss undefined

  5. #5
    Registrierter Benutzer
    Registriert seit
    08.12.2002
    Ort
    Maria Thann
    Beiträge
    176

    Hilfe weis ich schon sehr zu schätzen

    Ich weis Deine und die Hilfe anderer sehr zu schätzen keine Sorge. Mir ist auch klar, dass mir niemand meine Arbeit abnimmt. ABER: ich frage auch nur Dinge, die ich enweder (noch nicht) kann oder einfach (noch nicht) weis.
    Und der Lerneffekt ist hier für mich gigantisch groß.

    Also hier ist das Schnippsel das ich meine:

    Also das Stück Style, dass ich per PHP generiere und worin auch der "tolle" omouseout enthalten sein sollte.

    Torsten.E

    PHP-Code:
            echo '<style type="text/css"> ';
    //        echo '<!--\''
            
    echo 'form { } ';
            echo 
    '.Feld ';
            echo 
    '{ background-color:#FFFFAA; border:1px solid #0000ff; onmouseout="this.style.backgroundcolor=\'#FFFFFF\'"; onmousedown="this.style.backgroundcolor=\'#000000\'"; } ';
            echo 
    'table { } ';
            echo 
    '.td.text {height: 25px; } ';
            echo 
    ' td.eingabe {background-color:#FFFF00; } ';
            echo 
    '</style>'

  6. #6
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Du gehst da den falschen Weg, denke etwas Modularer. Zuerst einmal eine recht wichtige Grundkenntnis ist zu wissen das ein Event nur mit einem Handler oder einer Load Prozedur angesprochen werden kann. Zum einen würde ich das input entweder in einen Herodec Syntax oder in eine funktion setzen. Ich verwende in solchen fällen meine Template Klasse, hier ein Ausschnitt ich habe sie etwas zur besseren Übersicht gekürzt.
    PHP-Code:
    <?php
    /**
     * $XTPL::html_formtext()
     * 
     * @param string  $na  #Name
     * @param string  $in  #Value
     * @param integer $si  #Size
     * @param string  $st  #Stylesheet
     * @return string $html
     */

    function html_formtext($na ""$in ""$si 30$ev "")
    {
        
    $val = ( $in != "" ) ? " value=\"" $in "\"" "";
        
    $eve = ( $ev != "" ) ? $ev "";
      return 
    "<input type=\"text\" name=\"" $na "\"" $val " size=\"" $si "\" maxlength=\"" $si "\" " $eve .  "xml:lang=\"de\" lang=\"de\" />";

    ?>
    Jetzt Kommen wir zu deiner Frage bezüglich Aktives Formular. Wie oben schon erwähnt kannst du einen Event nur bei onload oder handle anwenden. Deshalb im Input ein Event onFocus() zum Initialisieren des Textfeldes zudem möchtest du ein Überwachung daher benötigen wir noch ein onBlur().
    PHP-Code:
    <?php
    $st  
    "onFocus=\"this.style.backgroundColor='#99EE00'; this.value='';\""
    $st .= "onBlur=\"this.style.backgroundColor='#EFEFEF';\"";
    echo 
    html_formtext("eingabe""Bitte hier eingeben!"50$st);
    ?>
    Für weiter Info siehe selfHtml

  7. #7
    Registrierter Benutzer
    Registriert seit
    08.12.2002
    Ort
    Maria Thann
    Beiträge
    176

    Danke

    Danke für die ausführliche Antwort. Bin erst gerade wieder ins Büro gekommen, war weg und deshalb auch erst heute die Rückantwort.

    Werde mir Deinen Vorschlag gleich mal genauer anschauen/ausprobieren und entsprechend umsetzen versuchen.

    Torsten.E

  8. #8
    Registrierter Benutzer
    Registriert seit
    08.12.2002
    Ort
    Maria Thann
    Beiträge
    176

    Tolles Beispiel

    Super hat geklappt, und gibt auch das Ergebnis wieder,
    das ich gesucht habe.

    Das ist es was ich mit "LERNEN" gemeint habe. Aus dem Beispiel habe ich 2 Sachen gelernt.
    1. Wunsch erfüllt.
    2. Flexible funktion für Eingabefelder.

    So und jetzt gleich an`s umsetzen :-)

    Torsten.E

  9. #9
    Registrierter Benutzer
    Registriert seit
    08.12.2002
    Ort
    Maria Thann
    Beiträge
    176

    Kann auch ein Style direkt angegeben werden ?

    ... onmouseout="this.style.backgroundcolor='#FFFFFF' ...

    Ich will aber einen Style aus einer CSS-Datei angeben.
    Wie wird das Eingabefeld bzw. der Style direkt angesprochen, damit man ihm einen anderen zuweisen kann, oder muß da die CLASS gewechselt werden, aber wie genau ?

    Torsten.E

  10. #10
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Ich will aber
    Noch einmal FETT gedruckt!
    Wie oben schon erwähnt kannst du einen Event nur bei onload oder einem handle anwenden.
    *grins und kopfschüttel*

  11. #11
    Registrierter Benutzer
    Registriert seit
    08.12.2002
    Ort
    Maria Thann
    Beiträge
    176
    Hier die Lösung, abgeändert von Deinem Script

    "aktiv" und "deaktiv" wurden in einer CSS-Datei eingerichtet.

    PHP-Code:
            $st "onFocus=\"this.className='aktiv';\"";
            
    $st .= "onBlur=\"this.className='deaktiv';\""
    Torsten.E

    :-) ich will aber

  12. #12
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    nicht schlecht Herr Specht
    Ich habe es gerade auch auf Kde Konqueror getestet - hier funzt es.
    Leute die das Lesen bitte mal auf ihren Browsern testen und Info abgeben.
    PHP-Code:
    <html>
    <
    head>
    <
    title></title>
    <
    style type="text/css">
        .
    aktiv background#99EE00; }
        
    .inaktiv background#EFEFEF; }
    </style>
    </
    head>
    <
    body>
    <
    input type="text" name="na" onFocus="this.className='aktiv';" onBlur="this.className='deaktiv';" />
    </
    body>
    </
    html

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •