从第一个默认选择选项触发变更事件

时间:2018-12-17 15:11:44

标签: javascript jquery

我有一组选项,但是不出所料,列表中的第一个选项不会触发更改事件调用。我想知道如何在不做手动trigger()的情况下启动它。

$('select').on('change', function(e) {
  console.log($(e.target).val());
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="mercedes">Mercedes</option>
  <option value="audi">Audi</option>
</select>

1 个答案:

答案 0 :(得分:1)

由于您提到由于选择会将用户带到新位置,因此无法在页面加载时触发它,这意味着您只能做两件事。

首先是在顶部添加一个选择选项,以便用户必须选择一些东西。这样,更改事件将触发,因为他们必须选择非默认值。

<option value="">Pick your favorite cheese</option>

或您的部分选项是使用blur而不是change。使用模糊的问题在于,用户必须从焦点上移开焦点才能触发。