我制作了一个<select>
标签,其中包含一些option
标签
<select name="Persons" onchange="changePage(this.value); this.selectedindex = -1">
<option class="op" value="0">option1 </option>
<option class="op" value="1">option2 </option>
,依此类推。
并使用js我制作了一个值values = ['0','1']
然后创建了一个功能,可根据单击的值重定向到页面
function changePage(){
for (let i=0; i < values.length ; i++){
let value = values[i]
if (value=1){
window.location.replace("link1");
} else if (value=2) {
window.location.replace("link2");
}
}
}
}
每当我点击选项1或2时,它只会重定向到选项1
预期:根据value
进行重定向(如果= 1则重定向到link1,如果= 2则重定向到link2)
答案 0 :(得分:4)
好吧,你想要的和写的之间存在逻辑鸿沟。
您正在迭代value
数组,其中第二次迭代将给出value=1
,而if(value=1)
语句将始终为true。这就是为什么始终将您重定向到link1
的原因。
更改:
无需维护JS数组value
。更改功能,如下所示:
function changePage(optionVal){
if (optionVal == "1"){
window.location.replace("link1");
} else if (optionVal == "2") {
window.location.replace("link2");
}
}