我可以把更多复杂的代码包裹起来,但这让我感到很沮丧。
我有两种页面类型:浏览:类别,浏览:搜索和浏览:搜索id = 0且不是= 0.
对于browse:category,我需要返回第1页 对于浏览:搜索id!= 0返回第2页 对于浏览:搜索id = 0返回页面3
我有多接近?
if (page=='browse:category'){
addPlacementType('page1');
}
elseif (id != 0'){
addPlacementType('page2');
}
else (id == 0'){
addPlacementType('page3');
}
答案 0 :(得分:2)
使用类似的东西:
if (page == 'browse:category'){
addPlacementType('page1');
} else if (page === 'browse:search' && id != '0'){
addPlacementType('page2');
} else if (page === 'browse:search' && id == '0'){
addPlacementType('page3');
}
您的语法存在问题,没有elseif
运算符,但您可以使用else if
代替(实际上它不是一个独特的运算符)。
您的报价也缺失了。将id
与字符串进行比较并不是什么大问题 - 当您使用id
(即==
)时,JavaScript会隐式地将'1' == 1
强制转换为字符串。
答案 1 :(得分:0)
else
正在使用else if
。browse:search
条件检查。如果id
是字符串,请使用:
if ( page == 'browse:category' ){
addPlacementType( 'page1' );
}
else if ( id != '0' ){
addPlacementType( 'page2' );
}
else if ( id == '0' ){
addPlacementType( 'page3' );
}
或者如果id
是整数:
if ( page == 'browse:category' ){
addPlacementType( 'page1' );
}
else if ( id != 0 ){
addPlacementType( 'page2' );
}
else if ( id == 0 ){
addPlacementType('page3' );
}
要包含page === 'browse:search'
部分,请执行此操作(如果id
是字符串):
if ( page == 'browse:category' ){
addPlacementType('page1');
} else if ( page == 'browse:search' ){
if ( id != '0' ) addPlacementType( 'page2' );
else if ( id == '0') addPlacementType( 'page3' );
}
答案 2 :(得分:0)
好吧,首先,摆脱0旁边的那些定义标记。其次,if和elseif旁边有一个条件,但是没有,所以要么你把elseif替换为else而不是结束它,或者当然,除了前两个条件之外,你可以保留原样并执行第三条指令,除了前两个条件之外。