如何在某些元素上触发代码?但这不会影响别人

时间:2018-11-26 10:32:52

标签: jquery html

如果我选择“ b”选项,我想显示一个警报,但是在此之前,我处于“ a”选项,而不是“ c”选项。

<select>
    <option>a</option>
    <option>b</option>
    <option>c</option>
</select>

1 个答案:

答案 0 :(得分:1)

您需要创建一个变量,该变量保存您之前的值。使用此变量,您可以检查以前是否在“ a”上(prev == "a")。

请参见下面的工作示例:

let prev = $('select').val();
$('select').change(function() {
  if(prev == 'a' && $(this).val() == 'b') { // Check if the previous value is 'a' and the current value is 'b'
    alert("From a ---> b");
  }
  prev = $(this).val();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select>
  <option>a</option>
  <option>b</option>
  <option>c</option>
</select>