Firefox中input元素,不能重新获取焦点函数focus()
js校验输入框的函数:
function is_number(feild) {
var strRegExp = /^\d+(\.\d{1,2})?$/;
if (!strRegExp.test(feild.value)) {
alert("请输入有效的数字,小数点后最多只能输入两位!");
feild.focus();
return false;
}
}
元素获取焦点函数focus(),在IE中正常,Firefox中却不起作用。
解决方案:
window.setTimeout(function () { document.getElementById('id').focus();}, 0);
setTimeout是指在载入后延迟指定时间后执行前面的表达式,当然在这里是延迟0ms之后执行function。