如果val =用于多个函数,则更容易编写

时间:2014-01-20 23:40:07

标签: javascript jquery

小提琴 - http://jsbin.com/oJUMIjUj/1/edit

// Autocomplete Search
$(".talk").on('keyup change', function() {
  var $val = $(this).val();

  if($val === "Say Hi") {
    alert('Ello Mate!');
  }


  if($val === "Say Bye") {
    alert('Bye Bye');
  }
});

因为此函数依赖于文本输入类型区分大小写。有没有更简单的方法来编写这个函数?

示例......

if($val === "Say Hi", "Say Bye", "say hi", "say bye", "Hi", "Bye") {
  alert('Ello Mate!');
}

if($val === "Say Hi", $val === "Say Bye", $val === "say hi", $val === "say bye", $val === "Hi", $val === "Bye") {
  alert('Ello Mate!');
}

2 个答案:

答案 0 :(得分:5)

在比较中调用$val上的toLowerCase()函数。

  if($val.toLowerCase() === "save") {
    saveTextAsFile();
  }

答案 1 :(得分:1)

您可以尝试$.inArray()一系列可能的值,以下将满足4个案例中的任何一个

if ($.inArray($val.toLowerCase(), ["say hi", "say bye", "hi", "bye"]) > -1) {
    alert('Ello Mate!');
}