Reputation: 3521
I am C++ programmer switching to web development. I am going through some tutorial and trying to color table rows. I found most of examples are related to column. Following is code attempted with some broken thoughts for coloring rows on selecting check box.
<table border=1>
<tr id="id1">
<td>row11</td>
<td>row12</td>
<td>row13</td>
<td>row14</td>
</tr>
<tr id="id2">
<td>row21</td>
<td>row22</td>
<td>row23</td>
<td>row24</td>
</tr>
<tr id="id3">
<td>row31</td>
<td>row32</td>
<td>row33</td>
<td>row34</td>
</tr>
</table>
code for selecting rows for coloring.
<form name="rcol" onsubmit="return false">
color columns
<input type=checkbox name="row1" onclick="toggleVis(this.name)" checked> 1
<input type=checkbox name="row2" onclick="toggleVis(this.name)" checked> 2
<input type=checkbox name="row3" onclick="toggleVis(this.name)" checked> 3
</form>
Javascript/JQuery Fuction for coloring rows.
function toggleVis(){
$(this).toggleClass("red-cell");
}
td.red-cell {
background: #F00; /* Or some other color */
}
Pls help me how this can be used for coloring rows.
Regards
Upvotes: 0
Views: 61
Reputation: 77482
If you use jQuery you don't need use inline function like onclick, better use jQuery "on" function.
$(function () {
$('.controls').on('click', function () {
// for row (tr)
// $('#table').find('tr').eq(+$(this).val() - 1).toggleClass("red-cell");
// for cell (td)
// $('#table').find('tr td').eq(+$(this).val() - 1).toggleClass("red-cell");
});
});
<table border=1 id="table">
<tr>
<td>row11</td>
<td>row12</td>
<td>row13</td>
<td>row14</td>
</tr>
<tr>
<td>row21</td>
<td>row22</td>
<td>row23</td>
<td>row24</td>
</tr>
<tr>
<td>row31</td>
<td>row32</td>
<td>row33</td>
<td>row34</td>
</tr>
</table>
<form name="rcol" onsubmit="return false">
<p>columns</p>
<input type=checkbox name="row" value="1" class='controls'> 1
<input type=checkbox name="row" value="2" class='controls'> 2
<input type=checkbox name="row" value="3" class='controls'> 3
</form>
Upvotes: 2