我必须进行简单的验证。它第一次工作正常,但在文本中填充值后,如果按 F5 刷新页面,则代码将无法正常工作。
产生错误的步骤
专注于第一个文本框并模糊而不填充任何值。函数将警告“错误”并且名为错误的类将添加到文本框
现在将在文本框中输入值并按 F5。然后从文本框中删除值,模糊功能将提示“无错误”这是问题。它应该提醒,因为我们在空文本框上模糊。
我投资了门,发现这个问题是由于 onload 函数而发生的,如果输入文本值不等于空白,则我提到代码然后模糊文本框
<head>
<script type="text/javascript" src="jquery-1.8.3.js"></script>
<script type="text/javascript">
$(function(){
$('input').blur(function(){
if($(this).hasClass('error')){
alert('error')
}
else {
alert('no error')
}
})
})
function test(id){
if($(id).val()==''){
$(id).addClass('error')
}
else {
$(id).removeClass('error')
}
}
$(function(){
setTimeout(function(){
$('input').each(function(){
if($(this).val()!=''){
$(this).blur();
}
})
},1000)
})
</script>
<style>
.error{ border:#F00 solid 1px}
</style>
</head>
<body>
<input type="text" onblur="test(this)"/>
<input type="text" onblur="test(this)" />
</body>