Mam łącze i wiersz tabeli, które mają pasujące klasy. Po kliknięciu łącza chciałbym zmienić kolor tła wiersza z tą samą klasą. Dla każdego przypadku będzie tylko jeden wiersz z tą samą klasą.Zmiana koloru tła wszystkich elementów o tej samej klasie
Oto moja aktualna funkcja.
<script type="text/javascript">
function check(x) {
elements = document.getElementsByClassName(x);
for (var i = 0; i < elements.length; i++) {
elements[i].bgColor="blue";
}
}
</script>
Oto część skryptu wiersza tabeli:
<tr class="alt1 12">
<td width="50" height="55">
<img src="iPhone/statusicon/12.png" alt="" id="forum_statusicon_12" border="0"></td>
<td>
<div class="forumtitle">
<a class="forumtitle 12" href="forumdisplay.php?f=12" action="async" onclick="check(this.className.split(' ')[1])">News and Current Events</a></div>
</td>
<td width="25">
<div class="forumarrow"><img src="iPhone/chevron.png" alt="" border="0"></div>
</td>
</tr>
wiersz tabeli ma dwie klasy, a ja potrzebuję drugi (liczba), aby być tym, czym jest skierowana. Obecny kod daje błąd „nieprawidłowy lub nielegalny łańcuch został określony”
Wydaje mi się to najlepsze, nie ma powodu, aby zachować dziwny miks id/class, a jQuery jest przesadą dla tak prostej operacji. – Bubbles
Przepraszam za to, nieumyślnie wysłałem zły kod. tylko jedno ostatnie pytanie ... zdałem sobie sprawę, że mam dwie klasy przypisane do każdego wiersza ... skrypt automatycznie przypisuje pierwszy, a ten reklamuje inny ograniczony spacją. jak mogę sobie z tym poradzić? zawsze chcę wysłać drugą klasę do tej funkcji. –
po prostu zamień '' 'this.className''' na' 'this.className.split ('') [1]' '' – drinchev