我想隐藏表格的一行。下面是表行:Javascript不会隐藏tr元素
<input id="CheckboxDamage" onchange="ChangeDmgExpVisibility()" type="checkbox" runat="server" />
<table style="width: 100%;">
***some other rows***
<tr id="dmg">
<td>
<asp:TextBox ID="TextBoxDamageExplanation" TextMode="MultiLine" runat="server"></asp:TextBox>
</td>
<td>
<asp:FileUpload ID="FileUploadDamage" runat="server" />
</td>
</tr>
</table>
这里是我的JS:
function ChangeDmgExpVisibility() {
var txtbox = document.getElementById('dmg');
var checkbox = document.getElementById('CheckboxDamage');
if (checkbox.checked)
txtbox.style.visibility = "visible";
else
txtbox.style.visibility = "hidden";
}
我也试过:
function ChangeDmgExpVisibility() {
var txtbox = document.getElementById('dmg');
var checkbox = document.getElementById('CheckboxDamage');
if (checkbox.checked)
txtbox.style.display = "block";
else
txtbox.style.display = "none";
}
他们没有给任何结果。有什么建议?
它正在工作https://jsfiddle.net/tnw5o9d1/。你的控制台有任何错误吗? – nanndoj
我不确定这是什么问题,因为当我在方法内写入警报时弹出,所以onchange不起作用 –
如果您有多个'div''具有与'dmg'相同的'id',则它不起作用。 – Derek