更改功能未在 Edge 或 IE 中触发

Change function not firing in Edge or IE

我正在尝试弄清楚如何让更改功能在 IE 和 Edge 上触发。我正在尝试将两个 select 字段馈入隐藏输入,覆盖任何先前的 selected 值。比如我select选项1从第一个select开始,1将是隐藏输入的值。如果我 select 第二个选项 3 select,3 将是隐藏输入的新​​值。

<select id="select1">
<option value="1">1</option>
<option value="2">2</option>
</select>

<select id="select2">
<option value="3">3</option>
<option value="4">4</option>
</select>

<input type="hidden" id="hiddenInput">

<script>
$(document).ready(function() {
$('#select1').on("change", function() {
   $('#hiddenInput').val($(this).val());
});
$('#select2').on("change", function() {
   $('#hiddenInput').val($(this).val());
});
});
</script>

尽管您的代码应该可以正常工作,但无需两次调用 'on' 方法。您可以通过将元素用作选择器或为其分配 class 来调用它一次。

例如:

$('select').on('change', function() {
    $('#hiddenInput').val($(this).val());
});

$('.selectClass').on('change', function() {
    $('#hiddenInput').val($(this).val());
});