我有一个选择,在表单中有几个不同的选项。我需要一个变量来保持选择哪个选项,以便从那里我可以根据所选内容做不同的事情。
这是我的HTML:
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<script src="script.js" type="text/javascript"></script>
</head>
<body>
<form method="get">
<table>
<tr>
<p>
Please choose your class:
</p>
</tr>
<tr>
<td>
<select name= "classSelect" id="classSelect" size = "3">
<option value = "CS211" selected = "selected">CS-211</option>
<option value = "CS111">CS-111</option>
<option value = "CS275">CS-275</option>
</select>
</td>
</tr>
</form
</body>
</html>
然后在我的javascript文件中,我只想声明一个全局变量:
var currentSelection = document.forms[0].classSelect.selectedIndex;
现在currentSelection总是为null,我不知道为什么。
答案 0 :(得分:3)
当您设置变量时,DOM尚未呈现。等待DOM触发ready事件或将脚本设置为在文档加载后运行。这是一个解决方案:
window.onload = function() {
// run this code on load
};
请注意,这将覆盖以前的onload函数。如果你有jQuery可用,你应该这样做,以避免任何覆盖:
$(window).load(function() {});
这些变体也有效:
$(function() {});
$(document).ready(function() {});