当有人取消单击复选框时,如何更改背景颜色
How to change background color when someone unclicks a checkbox
要突出显示一行,我的代码是:
function highlight_row(row_id)
{
var row = document.getElementById(row_id);
row.style.background = "yellow"; // background yellow
}
我的HTML代码是:
<tr id="row_{{ forloop.counter }}"><td>{{ word.n }}</td><td style="padding:0;"><a href="/search/?q={{ word.word }}" style="padding:5px;display:block;color:blue;">{{ word.word }}</a></td><td style="text-align:center"><input type="checkbox" name="checkbox_{{ word.id }}" onclick="highlight_row('row_{{ forloop.counter }}')" /></td></tr>
当用户取消选中该行的复选框时,如何取消该行的高亮显示?
将'this'添加到调用函数中:
<td style="text-align:center">
<input type="checkbox"
name="checkbox_{{ word.id }}"
onclick="highlight_row('row_{{ forloop.counter }}',this)" />
</td>
现在您可以使用复选框的复选状态来决定要做什么:
function highlight_row(row_id,checkbox)
{
var row = document.getElementById(row_id);
row.style.background = checkbox.checked ? "yellow" : "";
}
function highlight_row(row_id)
{
if (!highlight_row.toggleColor) highlight_row.toggleColor = 0;
var row = document.getElementById(row_id);
row.style.background = (highlight_row.toggleColor%2==0) ? "yellow" : ''; // put alternate color in ''
highlight_row.toggleColor++;
}
你是说这样吗?
function highlight_row(row_id)
{
var row = document.getElementById(row_id);
if (row.style.background !== "yellow") {
row.style.background = "yellow";
}
else {
row.style.background = "white";
}
}
相关文章:
- Javascript通过列表项的函数和css来更改背景颜色
- 使用圆中的数组更改背景颜色项目
- 使用angularjs根据时间更改背景颜色
- 如何使用颜色选择器来更改背景中的文本
- 在用Javascript更改背景颜色后:hover don'不要改变颜色
- 如何使用javascript更改背景图像ondragenter或ondragover
- 悬停在链接上时不断更改背景图像
- 更改背景图像 - JavaScript
- 导航栏在向下滚动时会更改背景,但在向上滚动时不会更改回来
- 多个复选框,如果正确,则更改背景图像(HTML/Javascript)
- JavaScript DOM 更改背景颜色未按预期工作
- 如何使用javascript更改背景颜色
- 文本的实时预览使链接在悬停时不会更改背景颜色
- 脚本随机更改背景渐变色[但从特定范围]
- jquery—按循环顺序更改背景颜色
- 鼠标悬停时随机更改背景图像
- 如何使用onmousemove函数在每次鼠标移动时更改背景图像
- 需要使用jQuery随机更改背景图像
- Jquery更改背景大小
- jQuery通过滚动逐渐更改背景图像