为什么这只适用于Firefox? IE和Chrome似乎忽略了style.display ='none' 有什么建议吗?
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title></title>
<script language="JavaScript">
function validateForm() {
document.getElementById('option2').style.display = 'none';
}
</script>
</head>
<body>
<select id="employeeID" onchange="validateForm();">
<option value="0" id="option0">Select an Employee</option>
<option value="1" id="option1">Employee 1</option>
<option value="2" id="option2">Employee 2</option>
<option value="3" id="option3">Employee 3</option>
</select>
</body>
</html>
答案 0 :(得分:2)
您应该使用change
方法将.addEventListener
事件绑定到您的选择元素 - &gt;
<强>的Javascript 强>
function validateForm() {
alert(); //checking if this actually works
document.getElementById('option2').style.display = 'none';
}
select_ = document.getElementById('employeeID');
select_.addEventListener('change',validateForm,false);
或
select_.onchange = validateForm;
<强>铬强>
<强> Safari浏览器强>
答案 1 :(得分:1)
变化:
document.getElementById('option2').style.display = 'none';
到
document.getElementById('option2').style.visibility="hidden";
答案 2 :(得分:-3)
Chrome之类的浏览器现在更喜欢使用jQuery而不是JavaScript,所以更改:
document.getElementById('option2').style.display = 'none';
这样阅读隐藏:
$('#option2').hide();
再次显示使用:
$('#option2').show();