Javascript 选择更改后的字段,使<;tr>;显示/隐藏,最初显示但一旦消失,无法重新显示
我有一个select表单字段,一旦该字段的值变为“Location”,TR table行将从display:none变为empty属性。 见下面的标题标签Javascript 选择更改后的字段,使<;tr>;显示/隐藏,最初显示但一旦消失,无法重新显示,javascript,html,Javascript,Html,我有一个select表单字段,一旦该字段的值变为“Location”,TR table行将从display:none变为empty属性。 见下面的标题标签 <script type="text/javascript"> function disableit() { if (document.getElementById("typepicker").value === "Location") { document.getE
<script type="text/javascript">
function disableit()
{
if (document.getElementById("typepicker").value === "Location") {
document.getElementById("1-row").style.display = "";
} else {
document.getElementById("1-row").style.display = "none";
}
}
</script>
函数disableit()
{
if(document.getElementById(“typepicker”).value==“Location”){
document.getElementById(“1行”).style.display=“”;
}否则{
document.getElementById(“1行”).style.display=“无”;
}
}
然后我有一个select字段,一旦选项更改,就会调用disableit()。默认选项为“Location”,因此脚本将运行,并显示1行表格行。然后,当选择不同的选项时,很好,表行得到display:none
但问题是,当我再次将选项更改回位置时,它不会显示隐藏的TR
<select class="alert-select" onChange="disableit();" id="typepicker" name="type">
<option value="Location">Location</option>
<option value="movement">First Movement</option>
</select>
<tr id="1-row">
<td><label>At Location</label></td>
<td>
<select class="alert-select" name="Location" id="locationpicker">
//In here goes some dynamically generated <options> from php query, works fine
</select>
</td>
</tr>
位置
第一乐章
在地点
//下面是一些由php查询动态生成的代码,运行良好
总而言之,最初显示的是1行id表行,因为typepicker在默认情况下将option Location设置为其在列表中的第一个选项,但当单击其他选项时,它会隐藏该行-很好,但随后再次单击Location,它不会显示
非常感谢您的帮助,谢谢您需要整理您的标记(HTML):
tr
应该包装在表
标签中。如果没有此选项,您的表将无法正确渲染//这里是一些动态生成的…
或使用HTML注释:
函数禁用它(){
if(document.getElementById(“typepicker”).value==“Location”){
document.getElementById(“1行”).style.display=“表行”;//更改为显示表行
}否则{
document.getElementById(“1行”).style.display=“无”;
}
}
位置
第一乐章
在地点
法国你需要整理你的分数(HTML):
您的tr
应该包装在表
标签中。如果没有此选项,您的表将无法正确渲染
删除注释//这里是一些动态生成的…
或使用HTML注释:
解决这两个问题似乎可以解决您的问题:
函数禁用它(){
if(document.getElementById(“typepicker”).value==“Location”){
document.getElementById(“1行”).style.display=“表行”;//更改为显示表行
}否则{
document.getElementById(“1行”).style.display=“无”;
}
}
位置
第一乐章
在地点
法国如果选择值是Location而不是empty属性,则可能应该从display:none更改为display:table row。如果选择值是Location而不是empty属性,则可能应该从display:none更改为display:table row。我认为,注释仅针对我们,而不是在原始代码中。所以问题只是桌子标签。@Olafant啊,你可能是对的。我只是提到了它,以防他们的代码中真的有它谢谢你,很抱歉遗漏了一些标签,我特意删除了这些标签以缩短问题。你的回答纠正了我的问题。谢谢,我想,这条评论只针对我们,而不是在原始代码中。所以问题只是桌子标签。@Olafant啊,你可能是对的。我只是提到了它,以防他们的代码中真的有它谢谢你,很抱歉遗漏了一些标签,我特意删除了这些标签以缩短问题。你的回答纠正了我的问题。谢谢