只要写
if(obj.onclick)
就可以了

解决方案 »

  1.   

    obj.onclick = function (){var d = '';......}if(obj.onclick =='' ){alert('没有设置这个事件')}快给分!!!!!!!!!!!
      

  2.   


    if(!obj.onclick){
        obj.onclick = function(){
            .....
        };
    }
      

  3.   

    obj.onclick 返回的是 onclick 函数的返回值 而不是判断有没有设置事件的返回值,
      

  4.   


    if( typeof(obj.onclick)=="object" )
        obj.onclick();
    else
        obj.onclick = myfun(){;};
      

  5.   

    sorry:
        alert( typeof(obj.onclick) ); // =="undefined";
    判断的方法太多了,楼上的均可.
      

  6.   

    if( typeof(obj.onclick)=="function" ) //函数为function,对象,数组,null 返回object
        obj.onclick(); 
    else 
        obj.onclick = myfun(){;}; 
      

  7.   

    大家发帖之前最好还是先运行一下代码
    我都试过了,alert(typeof(obj.ondblclick));的结果始终弹出一下信息如果onclick 空var myAtt=function anonymous()
    {}如果onclick="myFun();"var myAtt=function anonymous()
    {
    myFun();
    }
      

  8.   

    <!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);" 删除,加上试试看
      

  9.   

    楼上说的都正确呀!
    <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>
      

  10.   

    LZ。
     你自己alert(obj.onclick) 看弹出来的是什么。你不就能判断了么
      

  11.   

    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”;期待中··········~
      

  12.   

    <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'
      

  13.   

    我很好奇你的检测代码是怎样的……
    <!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>
      

  14.   


    你们都是在什么环境一测试的呀?
    我在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>