onchage事件不能激发

gliet1981 2006-10-18 11:42:38
我在一个文本框中有一个 onchange 时间 当文本框中输入的字符串符合条件是,按钮激活,否则不可用!
但是当我双击文本框从历史记录菜单选择的时候去激发不了 onchange 事件!请问哪位有办法解决,以下是代码:
<script language="javascript">
var patterns = new Object();
//匹配邮件地址
patterns.email = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;
*str – 要进行校验的字符串
*pat – 与patterns中的某个正则表达式模式对应的属性名称
*/
function verify(str,pat)
{
//alert(str);
thePat = patterns[pat];
if(thePat.test(str))
{
//alert("正确!");
document.form2.Submit2.disabled = false;
return true;
}
else
{
alert("Email地址格式错误!");
document.form2.Submit2.disabled = true;
return false;
}
}
</script>
<input name="email" type="text" id="email" size="40" maxlength="40" onChange="verify(this.value,'email')">
...全文
228 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
myvicy 2006-10-30
  • 打赏
  • 举报
回复
明明改了一个地方的。居然看不出来。
jackeyabc 2006-10-30
  • 打赏
  • 举报
回复
收藏先
梅雪香 2006-10-18
  • 打赏
  • 举报
回复
onChange是在焦点离开对象并且内容有改变时触发
gliet1981 2006-10-18
  • 打赏
  • 举报
回复
老大 你改了哪里? 没有找到啊
myvicy 2006-10-18
  • 打赏
  • 举报
回复
<script language="javascript">
var patterns = new Object();
//匹配邮件地址
patterns.email = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;
/*
*str – 要进行校验的字符串
*pat – 与patterns中的某个正则表达式模式对应的属性名称
*/
function verify(str,pat)
{
//alert(str);
thePat = patterns[pat];
if(thePat.test(str))
{
//alert("正确!");
document.form2.Submit2.disabled = false;
return true;
}
else
{
alert("Email地址格式错误!");
document.form2.Submit2.disabled = true;
return false;
}
}
</script>
<input name="email" type="text" id="email" size="40" maxlength="40" onChange="verify

(this.value,'email')">

试下,你的代码刚才有错误。
sephy 2006-10-18
  • 打赏
  • 举报
回复
内容改变请用onpropertychange
gliet1981 2006-10-18
  • 打赏
  • 举报
回复
onChange是在焦点离开对象并且内容有改变时触发


那为什么 不是输入内容的时候 就是内容没有改边?
但是当我双击文本框从历史记录菜单选择的时候去激发不了 onchange 事件???

一定要从键盘输入才可以吗?

87,921

社区成员

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

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