javascript - Highlight table cell based on vertical and horizontal headers -
i have "football squares" game going, , highlight cells of winners based on top , side headers.
now, know they're not headers serve same purpose.
my table located @ jfiddle: https://jsfiddle.net/8ybtntqg/
what want this:
let's winner whoever in cell lines teama - 2 , teamz - 9. mitch. want highlight mitch's cell. how javascript or jquery? know how if looking word "mitch", want automatically it, based on numbers of teama , teamz.
i have far, of course highlights name it's place knew start:
$('#table_id td').each(function() { if ($(this).text() == 'mitch') { $(this).closest('td').css('background-color', '#f00'); } });
you can index of column , row using jquery's filter() method.
that give direct access cell so:
$('tr').eq(row).find('td').eq(col).css('background-color', '#f00'); snippet:
function highlight(teama, teamz) { var col, row; col = $('#table_id td').filter(function() { //return column of teama return $(this).html() === teama.replace(' - ', '<br>'); }).index(); row = $('#table_id tr').filter(function() { ////return row of teamz return $(this).html().indexof(teamz.replace(' - ', '<br>')) > -1; }).index(); $('tr').eq(row).find('td').eq(col).css('background-color', '#f00'); } highlight('teama - 2', 'teamz - 9'); <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <table border="1" id="table_id"> <tr> <td>squares</td> <td>teama<br>1</td> <td>teama<br>2</td> <td>teama<br>3</td> <td>teama<br>4</td> <td>teama<br>5</td> <td>teama<br>6</td> <td>teama<br>7</td> <td>teama<br>8</td> <td>teama<br>9</td> <td>teama<br>0</td> </tr> <tr> <td>teamz<br>3</td> <td bgcolor="#89ff89">mark</td> <td bgcolor="#89ff89">john</td> </tr> <tr> <td>teamz<br>5</td> <td bgcolor="#89ff89">mike</td> <td bgcolor="#89ff89">earl</td> </tr> <tr> <td>teamz<br>8</td> <td bgcolor="#89ff89">morris</td> <td bgcolor="#89ff89">brice</td> </tr> <tr> <td>teamz<br>7</td> <td bgcolor="#89ff89">taylor</td> <td bgcolor="#89ff89">evan</td> </tr> <tr> <td>teamz<br>9</td> <td bgcolor="#89ff89">mandy</td> <td bgcolor="#89ff89">mitch</td> </tr> <tr> <td>teamz<br>2</td> <td bgcolor="#89ff89">tony</td> <td bgcolor="#89ff89">jennifer</td> </tr> <tr> <td>teamz<br>1</td> <td bgcolor="#89ff89">kristen</td> <td bgcolor="#89ff89">hector</td> </tr> <tr> <td>teamz<br>4</td> <td bgcolor="#89ff89">gabby</td> <td bgcolor="#89ff89">david</td> </tr> <tr> <td>teamz<br>6</td> <td bgcolor="#89ff89">george</td> <td bgcolor="#89ff89">steffanie</td> </tr> <tr> <td>teamz<br>0</td> <td bgcolor="#89ff89">breck</td> <td bgcolor="#89ff89">terry</td> </tr> </table>
Comments
Post a Comment