Select2 - 在 select 重新提交表单

Select2 - Resubmit form on select

我使用 Select2 插件显示可搜索的下拉菜单(可选择 select 多个项目)。有人可以帮助我在每次 selected(和 deselected,如果可能的话)时(重新)提交表格。

我知道 select2 有 "select" 事件,但我无法使代码正常工作。表单代码:

<select class="form-control select2-search" name="product_id[]" multiple="multiple"><option value='1'>1</option>...<option value='999'>999</option></select>

这是 Select2 的代码:

<script type="text/javascript">
$(document).ready(function() {
  var $eventSelect=$(".select2-search").select2({
  minimumResultsForSearch: 6
});
$eventSelect.on("select2:select", function() {
this.submit();
});
});
</script>

这是怎么回事?

您实际上是在提交 select,而不是表格..

试试这个

<script type="text/javascript">
$(document).ready(function() {
    var $eventSelect=$(".select2-search").select2({
       minimumResultsForSearch: 6
    });
    $eventSelect.on("select2:select", function() {
       console.log("select2:select");
       $(this).parents('form').submit();
    });
});
</script>

或者试试这个

<script type="text/javascript">
    $(document).ready(function() {
        var $eventSelect=$(".select2-search").select2({
           minimumResultsForSearch: 6
        });
        $eventSelect.on("change", function() {
           console.log("select2:select");
           $(this).parents('form').find('button').click();
        });
    });
    </script>