Gunnar Bittersmann: Tabellenzeile "ausgrauen" / JQuery

Beitrag lesen

@@Tim:

nuqneH

$("#my_id").click(function() {
$('.zeilenklasse').addClass("ausgrauen");
...

  
Die \ im JS-Code sind falsch.  
  
Und entscheide dich für einfache oder doppelte Anführungszeichen, aber sei konsequent. Ich [empfehle](http://forum.de.selfhtml.org/archiv/2014/3/t216697/#m1486530) in HTML doppelte, in PHP und JavaScript einfache.  
  
``$('.zeilenklasse')`{:.language-javascript}`? Soll das heißen, du hast `<tr class="zeilenklasse">`{:.language-html} im HTML zu stehen? Das wäre ziemlicher Blödsinn, denn durch den Elementtypen tr ist der Inhalt bereits als Tabellenzeile ausgezeichnet; noch eine Klasse dafür wäre unsinnig.  
  
In jQuery kannst du auch `$('#my_id tr')`{:.language-javascript} oder `$('#my_id').find('tr')`{:.language-javascript} selektieren.  
  
Wenn du jQuery ohnehin schon verwendest. Wie gesagt, geht das auch mit Vanilla-JS.  
  
Klassen sollten niemals anhand der gegenwärtig(!) gewünschten Darstellung benannt werden. Also nicht "ausgegraut". Sondern nach der Funktion. Vielleicht passt "disabled"? Was, wenn dir einfiele, diese Tabellenzeilen nicht auszugrauen, sondern z.B. rot zu färben, oder gar nicht anzuzeigen?  
  
``.ausgegraut { color: red }`{:.language-css}` wäre ziemlich blöd; ``.disabled { color: red }`{:.language-css}` ginge immer noch.  
  
Qapla'

-- 
„Talente finden Lösungen, Genies entdecken Probleme.“ (Hans Krailsheimer)