怎么在JS里面设置onchange执行两个方法

怎么在JS里面设置onchange执行两个方法,第1张

javascript onchange()事件:javascript onchange()事件一般用于用户表单中,例如:当文本框内容发生改变时触发的事件,或者下拉列表框内容发生改变时触发的事件等。

示例分享:onchange()事件,用户输入时,将小写字母转轮掘橡换为大写。

此处用到了javascript中的一个方法 toUpperCase()//将小写母转换为大写字母腊旁。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>用户表单验证</title>

<script>

function changeValue(){

var userName=document.getElementById("userName")//通过Id获得对象userName

userName.value=userName.value.toUpperCase() //将对象的值进行大小写的转换赋值给当前散配对象的值;

}

</script>

</head>

<body>

<form name="myform" method="POST" action="register.php" onsubmit="return checkForm()">

userName:<input type="text" name="userName" value="" id="userName" onchange="changeValue()" />

<input type="submit" name="" value="用户注册" />

</form>

</body>

</html>

js中onchange事件是在客竖尘辩户端改变输入控件的值,比如一个textbox,会出发的一个事件。但是如兄拍果在js代码中改变一个textbox的value,而不是通过键盘输入改变一个textbox值的话,是不会出发onchange事件的。

那么,如何在js代码模式通过代码触发textbox控件的onchange事件呢,经过查阅资料,发现js提供了余缺一个方法,可以触发控件的应该是所有事件。object.fireEvent()方法,使用方法如

object.fireEvent('onchange'),即可触发控件的onchange事件。

同理,js中使用fireEvent方法还可以触发其他的空间事件。

•补充一下,上述的fireEvent方法,在firefox浏览器并不支持,那么,如果想在ie和ff都可以运行的话,可是尝试下面的代码。

复制代码

代码如下:

if

(obj.fireEvent)

{

obj.fireEvent('onchange')

}

else

{

obj.onchange()

}

也就是判断一下fireEvent事件是否可用,不可用则直接使用onchange()方法。

虽然我没用过微信的控件,但根据你说的,浏览器的开发者工具能看到控件最终生成的input和class,坦橘谈那么让碰你直接用on 预绑伍悄定事件不就行了?

jQuery on:使用 on() 方法添加的事件处理程序适用于当前及未来的元素(比如由脚本创建的新元素)。

$(document).on('change','input.class',function(){

    alert()

})


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11968566.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存