这很简单,但是我不知道为什么IE不会执行我的innerHTML更改和其他操作。
function changeele2() {
document.getElementById("eleme2");
document.getElementById("workout");
document.getElementById("workoutweek");
if(workout.value == "Yes") {
eleme2.style.display = "inline-block";
workoutweek.className += " requiredField";
}
}
如果我更改Dropdown的值,则调用它:
<select id="workout" onchange="changeele2()">
<option>No</option>
<option>Yes</option>
</select>
都不适用带有文本的按钮
我就是找不到。有人知道吗?
最佳答案
当您执行document.getElementById("eleme2")
时,必须保存该操作的结果,并将其用于以后对该元素的访问。
function changeele2() {
var eleme2 = document.getElementById("eleme2");
var workout = document.getElementById("workout");
var workoutweek = document.getElementById("workoutweek");
if (workout.value == "Yes") {
eleme2.style.display = "inline-block";
workoutweek.className += " requiredField";
}
}
有些浏览器使用与元素id相同的名称来创建全局变量,因此这可能就是为什么它有时起作用的原因,但您不应依赖于此。
关于javascript - 脚本可在Chrome中运行,但不能在IE中运行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16071326/