Javascript 没有隐藏 div & input 元素

Javascript is not hiding div & input element

我有一个 div 需要在页面加载时隐藏的输入。这是另一个指定,因此如果选择了其他字段之一 "other",则应该显示 div。但是输入元素并没有隐藏在页面加载中。我一从 div 中取出 input 元素它就隐藏了,但是一旦我把 input 元素放回去它就不会隐藏,我做错了什么?

<head>
<script>
function hideother() {
    document.getElementById("otherdiv").style.visibility = "hidden";
    document.getElementById("others").style.visibility = "hidden";
}
</script>
</head>

<body onLoad="hideother()">
    <!-- 2A OTHER SPECIFY -->
    <div class="otherdiv">
    <label for="otherspecify">Please specify other:</label>
    <label id="error-2" style="text-transform:capitalize; color:red">&nbsp;</label>
    <br>
<input maxlength="30" name="others" id="others" type="text" class="form-control" placeholder="Other Specify" autocomplete="off" style="width:300px" />
    </div>
</body>

改变

<div class="otherdiv">

<div id="otherdiv">

class="otherdiv" 更改为 id="otherdiv"。有关工作示例,请参阅 this fiddle

class='otherdiv'更改为id='otherdiv'