论坛首页 Web前端技术论坛

一个关于事件触发的问题

浏览 4006 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-06-15  
<html>
<head>
<script src='prototype.js' type="text/javascript"></script>
<script language="javascript" type="text/javascript">
    Event.observe(window,'load',function(){
        $('tx1').observe('change',function(){alert('')});
    })
</script>
<title></title>

</head>

<body>
    <input id='tx1' />
    <input id='tx2' onchange='$("tx1").value = this.value' />
</body>
</html>

我是想当我对tx2改值时可以触发tx1的onchange事件,但这样不行,只有我直接对tx1改值时,才能触发,
要怎样写才能做到这一点呢??
   发表时间:2007-06-15  
变了,我看过我在赋值后面加了alert
0 请登录后投票
   发表时间:2007-06-15  
$("tx1").value = this.value;alert($F('tx1'))我是这样写的,提示的值已经是tx2的值了,证明已经改了,而且在tx1中显示的内容也变成了tx2中的内容了,但并没有触发onchange,不明白
0 请登录后投票
   发表时间:2007-06-15  
campaign 写道
$("tx1").value = this.value;alert($F('tx1'))我是这样写的,提示的值已经是tx2的值了,证明已经改了,而且在tx1中显示的内容也变成了tx2中的内容了,但并没有触发onchange,不明白


你尝试一下给tx1一个focus,然后再把焦点移走。
0 请登录后投票
   发表时间:2007-06-15  
直接调用 $("tx1").onChange()
0 请登录后投票
   发表时间:2007-06-16  
onchange事件的含义就是必须在失去focus之后检查value,如果变化则触发。你用alert会触发就是因为alert会抢走焦点。

明白了没有?
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics