我想为不同的菜单选项显示不同的选项。 如果MenuNo1(textinput)= 1,2,3,4或5 - 则menuPrice1的值应为R70.00 如果MenuNo1(textinput)= 8,9,12 - 则menuPrice1的值应为R85.00 如果MenuNo1(textinput)= 11 - 则menuPrice1的值应为R105.00
我试过这样做:
function calcMenu(form) { var MenuPrice1 = (+form.MenuPrice1.value); var MenuNo1 = (+form.MenuNo1.value); if ([1,2,3,4,5].indexOf(+form.MenuNo1.value) != -1) { MenuPrice1.value = "70"; } else if ([8,9,12].indexOf(+form.MenuNo1.value) != -1) { MenuPrice1.value = "85"; } else if (+form.MenuNo1.value == 11) { MenuPrice1.value = "105"; } }
但我确定我的代码上有不正确的内容
答案 0 :(得分:2)
您需要使用||
OR运算符
if (+form.MenuNo1.value === '8' ||
+form.MenuNo1.value === '9' ||
+form.MenuNo1.value === '12' )
此外,您需要使用==或===来检查它是否等于
答案 1 :(得分:2)
function calcMenu(form) {
if ([1,2,3,4,5].indexOf(+form.MenuNo1.value) != -1) {
MenuPrice1.value = "70";
}
else if ([8,9,12].indexOf(+form.MenuNo1.value) != -1) {
MenuPrice1.value = "85";
}
else if (+form.MenuNo1.value == 11) {
MenuPrice1.value = "105";
}
}
您可以在此处查看indexOf方法的示例:http://jsfiddle.net/fHzEG/