大家帮忙看看着段代码为什么变质了,是关于onblur的!

cantops 2006-04-12 10:01:17
我的初衷是为页面中所有<input 增加onblur事件,这样方便做成表单验证控件,但是底下的代码变成载入页面时响应了事件,而用鼠标点击页面时却没有任何反映,为什么会这样呢?

function initFrom()
{
var temp=document.getElementsByTagName("INPUT");
for (var i=0;i<temp.length;i++)
{
temp[i].onblur=CheckField(temp[i]);
}

}


function CheckField(Field)
{

//验证不通过,弹出提示warning
if (Field.value=="")
{
alert('aaa');
}
else
{
alert('bbb');
}
//该表单元素取得焦点,用通用返回函数

}
...全文
126 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
GaoXX 2006-04-15
  • 打赏
  • 举报
回复
顶一下
cantops 2006-04-12
  • 打赏
  • 举报
回复

temp[i].addEventListener("onblur",CheckField(temp[i]));
我改成这样了。但是问题依旧,还是直接就执行CheckField的结果了。
cantops 2006-04-12
  • 打赏
  • 举报
回复
我自己做了几个测试,好象问题出在
temp[i].onblur=CheckField(temp[i]);

这句并没有把实现onblur="CheckField(this)";
而是变成了直接执行CheckField,这里该怎么处理啊?
luoying_81 2006-04-12
  • 打赏
  • 举报
回复
楼主在实现上的想法就不对,用addEventListener来添加对象事件

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧