js获取对象为null的解决方法

(编辑:jimmy 日期: 2024/10/10 浏览:2)

页面上动态输出的数据,这是ajax获取的数据我要在页面上展示
复制代码 代码如下:
    success:function(data){ 
        var arr = data.split('_'); 
        var numArr = arr[0].split(","); 
        var numStr = ""; 
        if(numArr.length==undefined || numArr.length==0){ 
            $("#phonenolist").html('对不起,没有查询到相应的号码!'); 
        }else{ 
            for(var i=0;i<numArr.length;i++){ 
                numStr += "<li><a id='n_"+i+"' href=\"javascript:choose_mobile(" 
                    + numArr[i].toString()+",n_"+i+");\" class='buy'>" 
                    + numArr[i].toString().substring(0, 3) 
                    + "<span class='org'> " 
                    + numArr[i].toString().substring(3, 7) + " " 
                    + numArr[i].toString().substring(7, 11) 
                    + "</span></a></li>"; 
                } 
                $("#phonenolist").html(numStr); 
            } 
            index = arr[1]; 
            total = arr[2]; 
             $("#curr").html('  第'+index+'页,共'+total+'页 '); 
        } 
     function choose_mobile(num,id){ 
        alert(num+" "+id); 
        $("#mobile").val(num); 
        $("#xhmobile").html("<h3><b>"+num+"</b></h3>"); 
        $("#"+id).addClass("buy").siblings().removeClass("buy"); 
    } 

在js里面我的参数大概是这样子,choose_mobile(号码,对象id),但是在执行js的时候只弹出了号码,没有id,这样我很郁闷,后来又请教别人,在代码第9,10行,给方法的两个参数加上了‘'单引号,
复制代码 代码如下:
    numStr += "<li><a id='n_"+i+"' href=\"javascript:choose_mobile('" 
        + numArr[i].toString()+"','n_"+i+"');\" class='buy'>" 

就这样成功了,之前让我好纠结,js对字符串的解析跟对数字串的解析还是不太一样啊,分的这么清

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。