Tabellenmouseover mit Textausgabe

Ossi

Erfahrenes Mitglied
Ich habe gerade eine Tabelle mit Farbfeldern gebaut und möchte, daß beim Mouseover der Hexadezimalwert unter der Tabelle in einem einzeiligen Texteingabefenster angezeigt wird (so wie hier: http://www.interactivetools.com/products/htmlarea/index.html#demo bei den Farbeingabefeldern).

Beispiel eines Tabellenfeldes:
<td width="5%" bgcolor="#33FF00">&nbsp;</td>

Beim Mouseover soll unter der Tabelle in einem Texteingabefeld
wie dieses:
<input type="text" name="Farbwert" value=" Bitte wählen" size="15">
der Text "#33FF00" angezeigt werden.
Ein onclick-Event mit self close baue ich auch noch ein.
 
Versuch's mal bitte hiermit, vielleicht bringt dich das weiter.
PHP:
<td width="5%" bgcolor="#33FF00" onMouseOver="document.formularname.Farbwert.value = this.bgcolor;"></td>
Korrekte Formularstruktur ist hoffentlich um dein Textfeld herum gegeben...

hth,
Geist
 
Das funktioniert aber irgendwie nicht !!!???

Hier eine einzelne Tabellenzelle:

<td bgcolor=#33CC00 onMouseOver="document.formularname.Farbwert.value = this.bgcolor;" onClick=format('ForeColor', '#33CC00'); height=10 width=10></td>

und hier das Feld, wo der Hex-Wert angezeigt werden soll:

</table>
<br>
<form>
<input type="text" name="Farbwert" value="Bitte wählen" size=15>
</form>

... na und der Script für´s Format ist der altbekannte ....
 
Wie geschrieben - eine korrekte Formularstruktur drumrum ist wichtig.

Heißt in dem Fall, auch dem <form>-Tag ein name-Attribut zu verpassen, sonst kann die Referenzierung über JavaScript ja nicht gelingen.
PHP:
<form name="formularname">
<input type="text" name="Farbwert" value="Bitte wählen" size=15>
</form>
Aber noch ein Zweites:
Der Attributsname für die Hintergrundfarbe lautet bgColor, nicht bgcolor, zumindest JavaScript reagiert das case-sensitive.
Ich hatte das leider blind übernommen und nicht darauf geachtet, bei der enstprechenden JavaScript-Anweisung also bitte die richtige Schreibweise für das Literal verwenden. :)
PHP:
<td bgColor=#33CC00 onMouseOver="document.formularname.Farbwert.value = this.bgColor;" onClick="format('ForeColor', '#33CC00');" height=10 width=10></td>
Und bitte bei den EventHandlern nicht die Anführungszeichen, bzw. Hochkommas vergessen...

Dann klappt's auch, eben getestet.

hth,
Geist
 
Hm, ich versteh grad nur Bahnhof...

...auf deiner Seite klappt's irgendwie nur per
PHP:
document.forms[0].farbwert.value = this.bgColor;
aber nicht über den Namen des Formulars.

:confused:

Brauch' glaube ich, erstmal ne Pause.

Geist
 
Ist ja im Prinzip genau das selbe wie das, was ich zur Zeit bei deinem laufen habe - das geht auch, aber *warum* verstehe ich gerade überhaupt nicht.

Ist mir echt vollkommen unschlüssig, warum der Formularname nicht verstanden wird...

Geist
 
Vielleicht ist ja irgendein "Hurencode" in der Datei. Das Problem ist nämlich, daß ich die Sache am Mac (G4) mache und sie zum Test immer auf einen Windows 2000-PC mailen muß (mein Mac hat leider nur OS 9.22 und den IE 5.03, da funktioniert das mit den command Indentifiers nicht). Habe sonst immer die Dateien vorher gezippt, die letzten Male aber nicht. Vielleicht sind irgendwelche Sonderzeichen intern durch die Übertragung zum Mailserver umcodiert worden.
 
Hi,

nein, in dem Zipfile ist "guter" code :) - allerdings ist es mir rätselhaft warum er nicht funktioniert...

anstatt das teil immer zu verschicken, würd ichs lieber wo hochladen :)...

ciao
 

Neue Beiträge

Zurück