我有一个 HTML 表,每一行都有下拉列表。我希望每次更改下拉列表的值时,该行的背景都会更改以指示下拉列表上发生了某些更改。
这是代码:
<table id="table1">
<tr>
<td>Value</td>
<td>
<Select onchange="myFunction(this)">
<option value="1">1</option>
<option value='2">2</option></select>
</td>
</tr>
</table>
<script type="text/javascript">
function myFunction(a) {
var cells = document.getElementById("table1").rows[a].cells;
for (var i = 0, len = cells.length; i < len; ++i) {
cells[i].style.backgroundColor = "yellow";
}
}
</script>
还是不行,请问如何解决?谢谢!
最佳答案
如果您使用的是 jquery,则将您的函数更改为:
<script type="text/javascript">
function myFunction(a)
{
$(a).parent().parent().css("background-color", "yellow");
}
</script>
如果你打算只使用纯 JavaScript 那么它会是:
<script type="text/javascript">
function myFunction(a)
{
a.parentNode.parentNode.style.backgroundColor = "yellow";
}
</script>
关于javascript - 查找 dropdownlist 值更改时的行索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18495285/