var aaa = document.getElementsByName("aaa");
if (aaa.length + "" == "undefined")
{
   //...
}
//****************************
//*
//*  'undefined'为空或不是对象
//*
//****************************

解决方案 »

  1.   

    var aaa = document.getElementsByName("aaa");
    if (aaa.length)
    {
       alert("undefined")
    }
      

  2.   

    写反了
    var aaa = document.getElementsByName("aaa");
    if (!aaa.length)
    {
       alert("undefined")
    }
      

  3.   

    if (typeof(aaa.length) == "undefined")
      

  4.   

    你这个判断是毫无意义的
    不管名字为aaa的元素是否存在
    var aaa = document.getElementsByName("aaa");
    都会返回一个object
    aaa.length也都不会出现undefined,值为大于等于0的整数
      

  5.   

    alert(typeof(aaa.length + "")),就会发现,结果是string,所以不会走
    if (aaa.length + "" == "undefined")
    typeof(返回一个用来表示表达式的数据类型的字符串。)
      

  6.   

    忘了加上一句说明,如果有几个checkbox,当你勾选了其中N个后,用js判断checkbox.length就不会为"undefined"如果没有勾选,或者即使勾选了,再页面刷新后,checkbox消失了,checkbox.length就有可能为"undefined"。但是我现在的问题很奇怪,直接报错,说"undefined"为空或不是对象
      

  7.   

    function DelData(msg,checkboxId,url,parm)
    {
    if(confirm(msg))
    {
    var temp;
    var theform = document.del;
    var checkbox = document.getElementsByName(checkboxId);
    if(checkbox.length > 0)
    {
    if(checkbox.length+"" == "undefined")
    {
    checkbox.length = 1;
    }
    if(checkbox.length == 1)
    {
    if(checkbox.checked)
    {
    temp = checkbox.value;
    alert(temp);
    }
    }
    else
    {
    for(var i=0;i<checkbox.length;i++)
    {
    if(checkbox[i].checked)
    {
    temp += checkbox[i].value+","; 
    }
    }
    }
    if(temp.substring(0,temp.length) == ",")
    {
    temp = temp.substring(0,temp.length-1);
    }
    alert(temp);
    checkbox.value = temp;
    theform.action=url+parm;
    theform.submit();
    }
    else
    {
    alert("当前没有信息记录!");
    }
    }
    }
    <input type="checkbox" value='<%=rs(0)%>' id="infoid" name="infoid">
    <input name="del" type="button" class="FloatInput" value="  删除  " onclick="DelData('确认删除?','infoid','Company.asp?CompanyType=','<%=Session("CompanyType")%>');">
      

  8.   

    if(obj==null)
    {
     alert('obj is null!');
    }
      

  9.   

    if(obj==null)
    {
     alert('obj is null!');
    }=================
    这个我试过了,无效。
      

  10.   

    晕, 大意, 
    getElementsByName 返回 Array
    Array 肯定有 length 属性, 无元素时为0   var aaa = document.getElementsByName("aaa");
       alert(aaa.length==0);检测是否为零就是了...
      

  11.   

    if   (aaa == null)
    {} 
    这不就行了 要是aaa都是undefined  还.length不是出事儿了吗