我已经混淆了如何在这种情况下正确使用IF语句。 我有一些命令:
if($('#use').val() == "choose") {
//dialog show
}
我希望$('#use')
值如“繁荣”,“选择”,“foo”,“bar”可以打开对话框。
如何为这种情况编写正确的命令?
它的意思(通过逻辑思考):
if(#use) value "choose" or "boom" or "foo" or "bar" then dialog show
答案 0 :(得分:7)
你有一个额外的括号。 "choose")) {
应为"choose") {
。
if ($('#use').val() == "choose") {
//dialog show
}
或者将其分成多行可能会使意图更清晰。
var canOpenDialog = $('#use').val() == "choose";
if (canOpenDialog) {
//dialog show
}
更新。您可以使用$.inArray
检查多个值。
var options = ["boom","choose","foo","bar"];
var canOpenDialog = $.inArray(($('#use').val()),options) != -1;
if (canOpenDialog) {
//dialog show
}
答案 1 :(得分:3)
var useValue = $('#use').val();
if (useValue == "choose" || useValue == "boom" || useValue == "foo" || useValue == "bar") {
//do stuff
}
答案 2 :(得分:1)
您也可以使用$.inArray()
。
它将返回所选Array
中搜索字符串的索引,否则返回-1
var values = ["boom","choose","foo","bar"];
if ($.inArray($('#use').val(),values) != -1) {
// do stuff if "boom" is in the array
} else {
// do stuff if it is not.
}
答案 3 :(得分:0)
更好的选择是使用$ .inArray()
var required= ["boom","choose","foo","bar"];
if ($.inArray(($('#use').val()),required) != -1) {
// do Whatever you want
}