我有一个文本框和一个按钮 文本框中有一个失去焦点的事件
点击按钮有一个单击事件,这两个事件触发都会弹出同一个弹出框,现在我先光标聚焦于文本框,然后点击按钮
弹出了两个弹出框,我怎么控制在点击按钮的时候失去焦点的事件失去,
急用!!!!!
点击按钮有一个单击事件,这两个事件触发都会弹出同一个弹出框,现在我先光标聚焦于文本框,然后点击按钮
弹出了两个弹出框,我怎么控制在点击按钮的时候失去焦点的事件失去,
急用!!!!!
当onblur里有alert时,
button上只有mousedown,无法有配对的mouseup,
所以click事件不会被触发。 将button的onclick改成onmousedown会有你所希望的效果。 <form name= "form1 " method= "post ">
<input type=text name= "i1 " onblur= "alert( 'blur '); " value= " ">
<input type=text name= "i2 " value= " ">
<input type=button value= "ok " onmousedown= "alert( 'btn '); ">
</form>
建议一个方法,给button加上onmouseover和onmouseout事件
onmouseover的时候删除onblur事件,onmouseout的时候在将onblur事件加上,onclick事件不变
希望对你有帮助
非常负责任的告诉你,在IE中你的理论是对的, 因为IE中只有一个全局的event,
但是在非IE中你就不对了,我刚刚在ff上做过实验.你也可以自己试一下
一下代码可以去试验一下
<html>
<body>
<input name="txt" value="zhangsan" onblur="alert('txt')" /><br />
<input type="button" name="btn" value="ok" onclick="alert('btn')" />
<body>
</html>
<!DOCTYPE>
<html>
<head>
<title></title>
<script type='text/javascript'>
function $(id){
return document.getElementById(id);
}
window.onload = function(){
$('txt').onblur = function(){
popupDialog();
$('btn').onclick = '';// 这里把按钮的click事件清空了,但是后面还是打开两个窗口
};
$('btn').onclick = function(){
popupDialog();
};
var popupDialog = function(){
window.showModalDialog('');
};
}
</script>
</head>
<body>
<input type="text" id="txt" />
<button type='button' id="btn">button</button>
</body>
</html>
否则弹出并设置isShow为true,关闭时再把isShow设为false如果用jui的弹出框里面已经有这个状态标志并且不用手动设置这个标志的值。