谁能告诉我这个判断有什么用,我看它就等于白写,可是不写
又不行
function changelocation1(select3,localtionid1){
select3.length = 0;
var loc = localtionid1;
select3.options[select3.length] = new Option("","");
for(var j=0; j<subcat1.length;j++){
if(loc == null || loc == ""){
select3.options[select3.length] = new Option(subcat1[j][0],subcat1[j][0]);
}else if(loc == subcat1[j][1]){
select3.options[select3.length] = new Option(subcat1[j][0],subcat1[j][0]);
}
}
}我做的是三级联动

解决方案 »

  1.   

    当loc没指定或者loc等于指定值时添加选项。看下来应该,等价于:
    if(!loc || loc == subcat1[j][1]){
    select3.options[select3.length] = new Option(subcat1[j][0],subcat1[j][0]);
    }
      

  2.   


    那如果loc==null不就没有执行的内容了吗
      

  3.   


    if(loc == null || loc == "" || loc == subcat1[j][1]){
    select3.options[select3.length] = new Option(subcat1[j][0],subcat1[j][0]);
    }
      

  4.   

    function changelocation1(select3,localtionid1){
    select3.length = 0;
    var loc1 = localtionid1;
    select3.options[select3.length] = new Option("","");
    for(var j=0; j<subcat1.length;j++){
    if(null == loc1 || loc1 == ""){
    select3.options[select3.length] = new Option(subcat1[j][0],subcat1[j][0]);
    }else if(loc1 == subcat1[j][1]){
    select3.options[select3.length] = new Option(subcat1[j][0],subcat1[j][0]);
    }
    }
    }
    select3.length的初始值为0.而红色部分为options赋值这个select3.length有没有设置++什么的他的值是怎么增加的