Javascript IE 9在刷新时不遵循selectedIndex
在加载页面时,我使用JavaScript将下拉列表的值设置为“Peter” 我注意到在IE9.0.28中,一旦你加载页面,“Peter”被选中。如果将下拉列表设置为“John”并刷新页面,“John”将保持选中状态 事实上,如果您插入一条警报语句,您将在刷新时看到弹出的警报窗口,即在下拉列表中正确选择了“Peter”。但单击“确定”后,“John”再次被选中 升级IE不是一个选项。其他浏览器也可以 下面是要复制的代码:Javascript IE 9在刷新时不遵循selectedIndex,javascript,internet-explorer,drop-down-menu,Javascript,Internet Explorer,Drop Down Menu,在加载页面时,我使用JavaScript将下拉列表的值设置为“Peter” 我注意到在IE9.0.28中,一旦你加载页面,“Peter”被选中。如果将下拉列表设置为“John”并刷新页面,“John”将保持选中状态 事实上,如果您插入一条警报语句,您将在刷新时看到弹出的警报窗口,即在下拉列表中正确选择了“Peter”。但单击“确定”后,“John”再次被选中 升级IE不是一个选项。其他浏览器也可以 下面是要复制的代码: <!DOCTYPE html> <html dir="lt
<!DOCTYPE html>
<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head><title>getElementById method (Internet Explorer)</title></head>
<body>
<form>
<input type='hidden' id='theName' value='Peter' />
<select id="employees" size="1">
<option value="">John</option>
<option value="">Peter</option>
</select>
</form>
<script type="text/javascript">
var theName = document.getElementById('theName').value;
var theDropdown = document.getElementById('employees');
for (var i = 0; i < theDropdown.options.length; i++) {
if (theDropdown.options[i].innerHTML === theName) {
theDropdown.selectedIndex = i;
alert("Hooooold");
break;
}
}
</script>
</body>
</html>
getElementById方法(Internet Explorer)
约翰
彼得
var theName=document.getElementById('theName').value;
var dradropdown=document.getElementById('employees');
对于(变量i=0;i
有没有办法只用代码来解决这个问题?在onLoad事件中添加脚本逻辑
<!DOCTYPE html>
<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<title>getElementById method (Internet Explorer)</title>
</head>
<body>
<form>
<input type='hidden' id='theName' value='Peter' />
<select id="employees" size="1">
<option value="">John</option>
<option value="">Peter</option>
</select>
</form>
<script type="text/javascript">
window.onload = function() {
var theName = document.getElementById('theName').value;
var theDropdown = document.getElementById('employees');
for (var i = 0; i < theDropdown.options.length; i++) {
if (theDropdown.options[i].innerHTML === theName) {
theDropdown.selectedIndex = i;
alert("Hooooold");
break;
}
}
};
</script>
</body>
</html>
getElementById方法(Internet Explorer)
约翰
彼得
window.onload=函数(){
var theName=document.getElementById('theName').value;
var dradropdown=document.getElementById('employees');
对于(变量i=0;i
此操作有效:)只有java脚本不会导致此问题。您使用的是哪种框架?不确定您对框架的含义。我可以用IE 9复制这个。我在一个管理个人电脑的公司环境中。所以可能是管理员做了什么?谢谢。知道为什么它不能按我的方式工作吗?刷新不会重新执行脚本。在你的例子中,为了保持“peter”在下拉列表中,你必须强制它在刷新时重新执行脚本。刷新不会在IE 9中重新执行脚本吗?因为它是用铬做的。