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)
上一篇 2022年4月17日 下午5:20
下一篇 2022年4月17日 下午5:20


相关推荐

  • <asp: DropDownList>实现事件处理「建议收藏」

    <asp: DropDownList>实现事件处理「建议收藏」需求:从上面的截图中,可以看到这是两个控件实现的界面,现在的需求是这样的,实现当选择第一个下拉控件并选择了相应的数据后,那么此时在第二个中进行绑定他的子类在此显示,从而实现页面两级菜单实现数据统一绑定。解决办法:  tr>                   th>服务大类th>                    td class=”pro_title_css”>     

    2025年11月1日
    4
  • 软件测试面试题(面试前准备篇)

    软件测试面试题(面试前准备篇)目录一 问题预测让简单介绍下自己 每次面试开场 让说下自己会的内容看了哪些书籍 有问到 了解过哪些技术博客 论坛 有问到 是否了解软件测试需要掌握哪些知识 问到类似问题 之前面试过 觉得自己需要补充哪些 做了哪些行动 为什么做测试 觉得自己做测试有哪些优势 有问到 知道哪些 Bug 系统 9 测试用例的基本要素是 二 介绍一下公司项目三 技能

    2026年3月27日
    2
  • osd的原理

    osd的原理OSD OnScreenDisp 是屏幕显示技术的一种 用于在显示终端上显示字符 图形和图像 显存 也被叫做帧缓存 它的作用是用来存储显卡芯片处理过或者即将提取的渲染数据 如同计算机的内存一样 显存是用来存储要处理的图形信息的部件 我们在显示屏上看到的画面是由一个个的像素点构成的 而每个像素点都以 4 至 32 甚至 64 位的数据来控制它的亮度和色彩 这些数据必须通过显存来保存 再交由显示芯片

    2026年3月19日
    2
  • 政企行业智能体(Agent)研究报告

    政企行业智能体(Agent)研究报告

    2026年3月16日
    2
  • 打开phpstorm 的terminal 工具框的快捷键 alt+F12

    打开phpstorm 的terminal 工具框的快捷键 alt+F12

    2021年10月17日
    113
  • AutoEventWireup 的意义

    AutoEventWireup 的意义AutoEventWireup指:如果Page指令的AutoEventWireup属性被设置为true(或者如果缺少此属性,因为它默认为true),该页框架将自动调用页事件,即Page_Init和Page_Load方法。在这种情况下,不需要任何显式的Handles子句或委托。

    2022年5月28日
    36

发表回复

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

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