[JS] OnSelect anderen css style für ein td

quicksilver

Lt. Junior Grade
Registriert
Jan. 2004
Beiträge
363
Ich suche nach einer Möglichkeit den Tabellenhintergrund eines td's ändern zu lassen sobald ich eine Checkbox in der Zeile auswähle. Ich habe dort 2 verschiedene css styles. einmal z.b. class=table und on select möchte ich dann das die class=tablesecond ist.

Kann mir da wer helfen ?


Danke euch
 
Hallo,

der entsprechende Event-Handler und
Code:
document.getElementById('id').className
sollten dir bei deinem Problem helfen. ;)

MfG mh1001
 
Hey, sowas hab ich auchmal gesucht. Hat auch geklappt - zu 50%. Wenn man die Checkbox wieder abwählt bleibt die geänderte Hintergrundfarbe aber erhalten. Wie lös ich das?
HTML:
<input type="checkbox" onclick="document.getElementById('1').style.backgroundColor='#000';">

<table>
  <tr>
    <td id="1">abc</td>
  </tr>
</table>
Sah ungefähr so aus :)
 
Hallo Gauder,

probiere es einmal damit:

Code:
function aendere_bg(element)
{
  if(document.getElementById(element).style.backgroundColor == '#000')
  {
    document.getElementById(element).style.backgroundColor = '#FFF';
  }
  else
  {
    document.getElementById(element).style.backgroundColor = '#000';
  }
}
und
HTML:
<input type="checkbox" onclick="aendere_bg('beispiel');">

<table>
  <tr>
        <td id="beispiel">abc</td>
  </tr>
</table>

Btw: Nach dem HTML-Standard dürfen id-Bezeichner nicht mit einem numerischen Zeichen anfangen. ;)

MfG mh1001
 
Hui,

das klappt ja wunderbar (auch mit meiner '1' :p). Mal wieder saubere Arbeit mh1001 :daumen:
 
Ui danke. Hier wird ja das element id genutzt. Ist das auch mit einer "Class" möglich??? und wenn ja wie?
 
dazu musst du erst eine neue Funktion einführen:

Code:
function getElementsByClass(klasse){

  	var class_arr = new Array();
  	var all_tags = document.getElementsByTagName("*");

  	for(i=0; i<all_tags.length; i++){

    		if(all_tags[i].className == klasse){

			class_arr.push(all_tags[i]);
    		}
  	}

  	return class_arr;
}

und dann halt document.getElementByClass(klasse)....
 
Ich würde dir zur hover funktion von css raten problem bei dem ding ist leider das ie 6 prob damit hat (ie 7) nicht mehr aber scheiss drauf ..
 
hm also mein problem ist ich habe halt eine List. Also eine Tabelle mit mehreren Zeilen. Und die zeilen haben global per css z.b. gbcolor lightgrey und jeder 2. bekommt bei der ausgabe per php class="tablesecond" zugewiesen. Nun möchte ich aber per js onklick den bg verändern ;( das script oben funktioniert zwar. Aber das problem ist das dann die 2. zeile dann auch beim delesect nicht mehr die farbe vom tablesecond hat ;(
 
Zurück
Oben