js的onchange(js replace函数)

jsonpropertychange函数当一个HTML元素的属性用js改变的时候,都能通过onpropertychange来捕获。例如一个<inputname=”text1″id=”text1″/>对象的value属性被页面的脚本修改的时候,onchange无法捕获到,而onpropertychange却能够捕获。也就是说:onpropertychange事…

大家好,又见面了,我是你们的朋友全栈君。

js onpropertychange函数  

当一个HTML元素的属性用js改变的时候,都能通过 onpropertychange来捕获。例如一个 <input name=”text1″ id=”text1″ />对象的value属性被页面的脚本修改的时候,onchange无法捕获到,而onpropertychange却能够捕获。  
也就是说:onpropertychange事件在用键盘每改变一下文本框的值或用js改变其值便会触发一下,而onchange只有在用键盘改变其值,然后在失去焦点(onblur)后才触发,用js改变其值不能触发!onpropertychange和onchange都不管文本框中的实际值有没有变,只要有改的相应操作就可能触发。有时当上面两时间都不能满足需求时,可以考虑只用onblur。  

还有一点要注意到,当onblur和onchange事件一起用时,onblur会出问题。。。。详见如下  

测试页面:  

<html>  
<head> <title>通过js改变文本框中的值后触发的事件:onpropertychange事件 </title> </head>  
<body>  

<div id=”test1″>  
<b>测试onpropertychange事件和onchange事件一起用时: </b> <br>  
<font color=”red”>测试结果:onpropertychange事件在用键盘每改变一下文本框的值或用js改变其值便会触发一下,而onchange只有在用键盘改变其值,然后在失去焦点后才触  

发,用js改变其值不触发 </font>  
<br>  
<input name=”haha1″ type=”text” onpropertychange=”alert(‘触发了onpropertychange事件!’)” οnchange=”alert(‘触发了onchange事件!’)” size=”30″ >  
<input name=”testbutton1″ value=”通过js改变文本框中的值” type=”button” οnclick=”document.getElementById(‘haha1’).value=’js改变文本框后的值'”>  
<br>  
<br>  
<br>  

<div id=”test2″>  
<b>测试只有onblur和onchange事件时: </b> <br>  
<font color=”red”>测试结果:onchange先触发,onblur后触发 </font>  
<br>  
<input name=”haha2″ type=”text” οnblur=”alert(‘触发了onblur事件!’)” οnchange=”alert(‘触发了onchange事件!’)” size=”30″ >  
<input name=”testbutton2″ value=”通过js改变文本框中的值” type=”button” οnclick=”document.getElementById(‘haha2’).value=’js改变文本框后的值'”>  
<br>  
<div>  
<br>  
<br>  
<br>  

<div id=”test3″>  
<b>测试当onblur和onpropertychange事件一起用时: </b> <br>  
<font color=”red”>测试结果:onblur好象出了问题,只要用键盘在文本框中随便输入一个值,便会触发它。可能是onpropertychange把它惹毛了。。。^-^ </font>  
<br>  
<input name=”haha3″ type=”text” οnblur=”alert(‘触发了onblur事件!’)” onpropertychange=”alert(‘触发了onpropertychange事件!’)” size=”30″ >  
<input name=”testbutton3″ value=”通过js改变文本框中的值” type=”button” οnclick=”document.getElementById(‘haha3’).value=’js改变文本框后的值'”>  
<br>  
<div>  
<br>  
<br>  
<br>  
<div id=”test4″>  
<b>测试有onblur、onpropertychange事件和onchange事件一起用时: </b> <br>  
<font color=”red”>测试结果:onblur在和onpropertychange一起用时的问题仍然存在 </font>  
<br>  
<input name=”haha4″ type=”text” οnblur=”alert(‘触发了onblur事件!’)” onpropertychange=”alert(‘触发了onpropertychange事件!’)” οnchange=”alert(‘触发了  

onchange事件!’)” size=”30″ >  
<input name=”testbutton4″ value=”通过js改变文本框中的值” type=”button” οnclick=”document.getElementById(‘haha4’).value=’js改变文本框后的值'”>  
<br>  
<div>  

</body>  
</html> 

转载于:https://www.cnblogs.com/richelle009/archive/2011/08/17/2142850.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/126529.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Mysql8.0安装步骤「建议收藏」

    第一步:下载安装包MYSQL官方下载地址:官方下载这里第一项是在线安装,第二项是离线包安装,我选择的是第二项(不用管你电脑是多少位的操作系统),因为:Note:MySQLInstalleris32bit,butwillinstallboth32bitand64bitbinaries.不用注册、登录,直接选择左下按钮下载:Nothanks,ju…

    2022年4月14日
    53
  • uwsgi使用_qemu virtual cpu

    uwsgi使用_qemu virtual cpu导论wsgi全称webservergatewayinterface,wsgi不是服务器,也不是python模块,只是一种协议,描述webserver如何和webapplication通信的规则。运行在wsgi上的web框架有bottle,flask,djangouwsgi和wsgi一样是通信协议,是uWSGI服务器的单独协议,用于定义传输信息的类型,是一个web服务器,实现了W…

    2022年9月12日
    0
  • 什么是国际邮箱地址,如何登录域名邮箱?「建议收藏」

    什么是国际邮箱地址,如何登录域名邮箱?「建议收藏」互联网的高速发展,信息通讯的重要,邮箱已然变成不可或缺的通讯工具,TOM企业邮箱作为国内重要的邮箱厂商,一直为广大用户提供系统的邮箱服务。国际邮箱地址与国内都是同等格式,账号名称@域名组成通用的国际邮箱地址,下面给大家讲解如何注册域名邮箱并登录使用。如何注册域名邮箱?首先讲下域名邮箱的特点,域名邮箱是指用公司或者个人注册的域名,用来开通邮箱时使用的域名,其具有个性化、标志化的特点,在商务往来中更加突显正规性。注册完成将域名解析到邮箱服务商,开通的邮箱就能使用了。登录使用域名邮箱邮箱开通后,使用邮箱

    2022年9月24日
    1
  • markdown编辑器使用方法_写markdown的软件

    markdown编辑器使用方法_写markdown的软件Markdown常用编辑

    2022年4月21日
    26
  • css3颜色渐变_灰色渐变图片

    css3颜色渐变_灰色渐变图片Document*{margin:0;padding:0}.words{font-size:25px;font-weight:700;text-align:center;margin:20px0}div{width:300px;height:150px;margin:0auto10px;border:1pxsolid#ddd;}.box1{background:-webkit-linea…

    2025年7月20日
    0
  • ubuntu解决vim打开文件时报错E325ATTENTION「建议收藏」

    ubuntu解决vim打开文件时报错E325ATTENTION「建议收藏」ubuntu解决vim打开文件时报错E325ATTENTION

    2022年5月12日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号