日期:2014-05-16  浏览次数:20520 次

js的onchange事件
<html>  
<head>  
<script language="javascript" type="text/javascript">  
  window.onload = function(){  
  document.getElementById('tx1').attachEvent("onpropertychange",txChange)  
  }  
  function txChange(){  
  alert("ok");  
  }  
</script>  
<title></title>  
  
</head>  
  
<body>  
  <input id='tx1' />  
  <input id='tx2' onchange ='document.getElementById('tx1').value=this.value;'/>  
</body>  
</html>  
我想在tx2中输入数值后,触发tx1的事件,这样为什么不可以?怎么改?

------解决方案--------------------
HTML code

<input id='tx1' />   
<input id='tx2' onkeyup="test(this.value);"/>

------解决方案--------------------
IE8下弹出OK了
只改了加注释那一行的引号嵌套
HTML code

<html>
<head>
<script language="javascript" type="text/javascript">
  window.onload = function(){
    document.getElementById('tx1').attachEvent("onpropertychange",txChange)
  }
  function txChange(){
   alert("ok");
  }
</script>
<title></title>
</head>
<body>
  <input id='tx1' />
  <input id='tx2' onchange ="document.getElementById('tx1').value=this.value;"/><!-- 引号嵌套不能乱 -->
</body>
</html>

------解决方案--------------------
onchange在利用赋值是调用不到的,有操作可以再tx2加事件~
------解决方案--------------------
<html>
<head>
<script language="javascript" type="text/javascript">
window.onload = function(){
document.getElementById('tx1').attachEvent("onpropertychange",txChange)
}
function txChange(){
alert("ok");
}
</script>
<title></title>
 
</head>
 
<body>
<input id='tx1' />
<input id='tx2' onchange ="document.getElementById('tx1').value=this.value;"/>
</body>
</html>
------解决方案--------------------
引号也是一个问题,一般来说,双引号内不能再放双引号,要放的话,要转义。\"这样来表示。
------解决方案--------------------
试试这样:
JScript code
<html>   
<head>   
<title></title>   
   
</head>   
   
<body>   
  <input id="tx1" type="text" onchange="alert(2);"/>
  <input type="text" id="tx2" onchange="document.getElementById('tx1').fireEvent('onchange');"/>
</body>   
</html>

------解决方案--------------------
onpropertychange=""
可以用着个时间方法,放到控件里面,只要控件的value一变 ,就会触发,即使你还没有输入完,也会触发
可用来实时判断当前输入长度等