这个表单select的onchange函数正在执行onload,但在更改表单中的选择时却没有。我尝试过使用onload和onclick。
我显然只是在调试实现阶段,一旦它工作,它会做其他的东西。
HTML:
<select case="sel1" name="Sort1" id="Sort1">
<option value="0">Fred</option>
<option value="1">Ginger</option>
<option value="2">Judy</option>
<option value="3">Gene</option>
</select>
JavaScript的:
window.onload = function() {
document.getElementById('Sort1').onchange = ChgSort();
}
function ChgSort() {
alert(document.getElementById('Sort1').value);
}
当我加载页面时,我得到当前选择值为0的警报弹出窗口。但是当我单击选择字段并更改选项时,没有任何反应。
我很有信心,并且希望,这是愚蠢和愚蠢的事情,我一直在盯着调试同样的功能太久了......
救命!
你需要在线更改
document.getElementById('Sort1').onchange = ChgSort();
对此
document.getElementById('Sort1').onchange = ChgSort;
onchange应该是函数而不是返回值,请看下面的例子
window.onload = function() {
document.getElementById('Sort1').onchange = ChgSort;
}
function ChgSort() {
alert(document.getElementById('Sort1').value);
}
<select case="sel1" name="Sort1" id="Sort1">
<option value="0">Fred</option>
<option value="1">Ginger</option>
<option value="2">Judy</option>
<option value="3">Gene</option>
</select>
你的Javascript有:
window.onload = function() {
document.getElementById('Sort1').onchange = ChgSort();
}
window.onload应该更改为window.onchange,它应该工作