Javascript 获取HTML表单的onChange null错误
这是我下面的表格Javascript 获取HTML表单的onChange null错误,javascript,html,forms,null,onchange,Javascript,Html,Forms,Null,Onchange,这是我下面的表格 <select name="catg" id="select"> <option> Select..</option> <option value="stu">Uni Student</option> <option value="anothersstu">Student at another institution</option> <option va
<select name="catg" id="select">
<option> Select..</option>
<option value="stu">Uni Student</option>
<option value="anothersstu">Student at another institution</option>
<option value="staff">Uni Staff</option>
<option value="other">other</option>
</select><br />
Student Number / Staff Number: <input type="text" name="ss" id="txt"/> <br />
它的意思是,当用户从选择菜单中选择Uni student时,学生编号/教职员工编号的文本框必须为maxlength 8。它可以在JSFIDLE中工作,但不能在普通浏览器上工作
我在chrome上的错误消息:-无法读取null的属性“onchange”
关于为什么会发生这种情况,有什么建议吗?请尝试下面的代码:
document.getElementById('select').addEventListener('change', function () {
if (this.value == "stu") {
document.getElementById('txt').maxLength = 8;
} else {
document.getElementById('txt').removeAttribute('maxLength');
}
}, false);
您忘记了
函数
关键字
试试这个
document.getElementById('select').onchange = function(){
if(this.value=="stu"){
document.getElementById('txt').maxLength=8;
}else{
document.getElementById('txt').removeAttribute('maxLength');
}
};
这里是尝试的Fiddle链接-无法调用null的“addEventListener”方法-立即获取该错误。在所有浏览器或仅chrome浏览器中?在Fiddle中工作,是否有id=select的其他元素?您可以尝试更改id然后运行吗?
document.getElementById('select').onchange = function(){
if(this.value=="stu"){
document.getElementById('txt').maxLength=8;
}else{
document.getElementById('txt').removeAttribute('maxLength');
}
};