js 能不能判断是否已设置 onclick 事件 只要写if(obj.onclick)就可以了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 obj.onclick = function (){var d = '';......}if(obj.onclick =='' ){alert('没有设置这个事件')}快给分!!!!!!!!!!! if(!obj.onclick){ obj.onclick = function(){ ..... };} obj.onclick 返回的是 onclick 函数的返回值 而不是判断有没有设置事件的返回值, if( typeof(obj.onclick)=="object" ) obj.onclick();else obj.onclick = myfun(){;}; sorry: alert( typeof(obj.onclick) ); // =="undefined";判断的方法太多了,楼上的均可. if( typeof(obj.onclick)=="function" ) //函数为function,对象,数组,null 返回object obj.onclick(); else obj.onclick = myfun(){;}; 大家发帖之前最好还是先运行一下代码我都试过了,alert(typeof(obj.ondblclick));的结果始终弹出一下信息如果onclick 空var myAtt=function anonymous(){}如果onclick="myFun();"var myAtt=function anonymous(){myFun();} <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML> <HEAD> <TITLE> New Document </TITLE> <script> function init(){ if(document.getElementById("aa").onclick){ alert(123); document.getElementById("aa").onclick(); }else{ alert(456); } } </script> </HEAD> <BODY onload="init()"> <form METHOD="POST" NAME="frmOrder"> <SELECT id="aa" style="width: 185px" onclick="alert(555);" > <option value=SELECT> </option> <option value="11"> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA </option> </SELECT> <form> </BODY></HTML>可以吧onclick="alert(555);" 删除,加上试试看 楼上说的都正确呀!<html><body><input type="button" id="btn1" value="test"></body><script language="JavaScript">var obj =document.getElementById("btn1");if(obj.onclick){} else { obj.onclick = function(){ alert("hello") }}</script></html> LZ。 你自己alert(obj.onclick) 看弹出来的是什么。你不就能判断了么 10楼的代码我试过了~ 按你说的话 我把 onclick="alert(555);" 取消了以后 点击select 时 弹出 alert(456); 的结果才对~ 可是没动摇啊· 、至于12楼~ 如果 onclick没设置 弹出一下信息var myAtt=function anonymous(){}如果onclick="myFun();" 则 弹出一下信息 ~ var myAtt=function anonymous(){myFun();}alert(typeOf(obj.onclick);不管有没有设置,始终弹出 “function”;期待中··········~ <html><body><input type="button" id="btn1" value="test"></body><script language="JavaScript">var obj =document.getElementById("btn1");if(obj.onclick){} else { obj.onclick = function(){ alert("hello") }}alert(typeof(obj.onclick));</script></html> 刚刚用楼上的代码测试了一下,如果不给obj对象实现onclick的话,弹出的是'object'如果实现了onclick弹出的是'function' 我很好奇你的检测代码是怎样的……<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title></head><body><button onclick="fun()">按钮一</button><button>按钮二</button><button id="btn3">按钮三(动态添加事件)</button><button id="btn4">按钮四(动态添加事件二)</button><br/><button onclick="check()">检测事件</button><script type="text/javascript">function $(id){ return document.getElementById(id);}//事件函数function fun(){ alert("有事件的");}//动态添加的事件$("btn3").onclick = function(){fun();};//另一种方式动态添加的事件$("btn4").setAttribute("onclick",fun);//检测是否有函数function check(){ var btns = document.getElementsByTagName("button"); for(var i=0;i<btns.length;i++) { if(btns[i].onclick) alert(btns[i].innerHTML + " 有onclick事件"); }}</script></body></html> 你们都是在什么环境一测试的呀?我在IE7和FF3测试的结果,未实现前分别为 null和undefine。另外,14楼,你在这个地方加alert怎么能看到未定义onclick之前的属性呢。这段代码是在第一次运行程序的时候检查是否有onclick事件的定义。没有的话加上定义。下面的代码可以看到,实现onclick事件前后的对比。<html> <body> <input type="button" id="btn1" value="test"> </body> <script language="JavaScript"> var obj = document.getElementById("btn1"); alert(obj.onclick); if (obj.onclick && typeof(obj.onclick)=="function") { } else { obj.onclick = function(){ alert("hello") } } alert(obj.onclick); </script></html> c#后台调用JS函数,并返回值 JS实现汉字转拼音【转】 这段代码,不太理解。 微博@智能提示功能怎么做??? 各位高手帮帮忙吧,关于js里动态取控件id script 标签 闭合方式问题 当点击某个超连接的同时提交表单中的内容,这JavaScript语言要怎么写? 如何动态获取表单名? 如何在form提交的网页里触发事件 javascript怎么操作数据库?在线等待 javascript中如果按钮是灰色的如何才能点击? 图片无缝滚动 如何实现 onmouseout onclick 停止滚动 互不影响
if(!obj.onclick){
obj.onclick = function(){
.....
};
}
if( typeof(obj.onclick)=="object" )
obj.onclick();
else
obj.onclick = myfun(){;};
alert( typeof(obj.onclick) ); // =="undefined";
判断的方法太多了,楼上的均可.
obj.onclick();
else
obj.onclick = myfun(){;};
我都试过了,alert(typeof(obj.ondblclick));的结果始终弹出一下信息如果onclick 空var myAtt=function anonymous()
{}如果onclick="myFun();"var myAtt=function anonymous()
{
myFun();
}
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script>
function init(){
if(document.getElementById("aa").onclick){
alert(123);
document.getElementById("aa").onclick();
}else{
alert(456);
}
}
</script>
</HEAD>
<BODY onload="init()">
<form METHOD="POST" NAME="frmOrder">
<SELECT id="aa" style="width: 185px" onclick="alert(555);" >
<option value=SELECT> </option>
<option value="11"> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA </option>
</SELECT>
<form>
</BODY>
</HTML>可以吧onclick="alert(555);" 删除,加上试试看
<html>
<body>
<input type="button" id="btn1" value="test">
</body>
<script language="JavaScript">
var obj =document.getElementById("btn1");
if(obj.onclick){
} else {
obj.onclick = function(){
alert("hello")
}
}
</script>
</html>
你自己alert(obj.onclick) 看弹出来的是什么。你不就能判断了么
、
至于12楼~
如果 onclick没设置 弹出一下信息var myAtt=function anonymous()
{}如果onclick="myFun();" 则 弹出一下信息 ~ var myAtt=function anonymous()
{
myFun();
}
alert(typeOf(obj.onclick);
不管有没有设置,始终弹出 “function”;期待中··········~
<body>
<input type="button" id="btn1" value="test">
</body>
<script language="JavaScript">
var obj =document.getElementById("btn1");
if(obj.onclick){
} else {
obj.onclick = function(){
alert("hello")
}
}
alert(typeof(obj.onclick));
</script>
</html> 刚刚用楼上的代码测试了一下,如果不给obj对象实现onclick的话,弹出的是'object'如果实现了onclick弹出的是'function'
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head><body>
<button onclick="fun()">按钮一</button>
<button>按钮二</button>
<button id="btn3">按钮三(动态添加事件)</button>
<button id="btn4">按钮四(动态添加事件二)</button>
<br/>
<button onclick="check()">检测事件</button>
<script type="text/javascript">
function $(id)
{
return document.getElementById(id);
}//事件函数
function fun()
{
alert("有事件的");
}//动态添加的事件
$("btn3").onclick = function(){fun();};//另一种方式动态添加的事件
$("btn4").setAttribute("onclick",fun);//检测是否有函数
function check()
{
var btns = document.getElementsByTagName("button");
for(var i=0;i<btns.length;i++)
{
if(btns[i].onclick)
alert(btns[i].innerHTML + " 有onclick事件");
}
}
</script>
</body>
</html>
你们都是在什么环境一测试的呀?
我在IE7和FF3测试的结果,
未实现前分别为 null和undefine。
另外,14楼,你在这个地方加alert怎么能看到未定义onclick之前的属性呢。
这段代码是在第一次运行程序的时候检查是否有onclick事件的定义。
没有的话加上定义。下面的代码可以看到,
实现onclick事件前后的对比。
<html>
<body>
<input type="button" id="btn1" value="test">
</body>
<script language="JavaScript">
var obj = document.getElementById("btn1");
alert(obj.onclick);
if (obj.onclick && typeof(obj.onclick)=="function") {
}
else {
obj.onclick = function(){
alert("hello")
}
}
alert(obj.onclick);
</script>
</html>