Javascript 在Select2插件中的第二个multi-select选项上未触发Jquery key up事件

Javascript 在Select2插件中的第二个multi-select选项上未触发Jquery key up事件,javascript,jquery,ajax,jquery-select2,Javascript,Jquery,Ajax,Jquery Select2,我在为第二个多选项选择2插件时遇到了问题,每次我都需要根据用户输入的文本更改选项列表 第一次,当我在名为keyup事件的多选字段中输入文本,然后调用ajax函数与选项列表绑定时,一切正常 $(".select2").on('keyup', function (e) { var city = $("#add_city option:selected").text(); var location = $(".select2-search__field").val(); v

我在为第二个多选项选择2插件时遇到了问题,每次我都需要根据用户输入的文本更改选项列表

第一次,当我在名为keyup事件的多选字段中输入文本,然后调用ajax函数与选项列表绑定时,一切正常

$(".select2").on('keyup', function (e) {

    var city = $("#add_city option:selected").text();
    var location = $(".select2-search__field").val();

    var url = 'https://maps.googleapis.com/maps/api/place/autocomplete/json?key=AIzaSyCNHGRJsM3uwGUm5gYLGsVrPNyRdeWgYDY&components=country:in&input='+ city +''+ location +'';
    var data ={"url":url};
    console.log(url);
    //return false;
     $.ajax({
    url: 'webservice.php',
    type: 'POST',
    dataType:'JSON',
    contentType: "application/json; charset=utf-8",
    data:JSON.stringify(data),
    success: function (response) {
        //alert(response);
        console.log(JSON.stringify(response));
        for(var i in response)
        {
            $("#add_area").append("<option value=\"" + response[i] + "\">" + response[i] + "</option>");
        }}
    ,error: function(xhr, status, error) {}});
上述行清除了选项,但未触发keyup事件


请帮助我如何解决此问题。

尝试以下操作:您正在刷新列表,因此正在创建新元素,因此以前的绑定keyup事件处理程序将无法工作
替换以下代码

$(".select2").on('keyup', function (e) {


尝试以下操作:您正在刷新列表,因此正在创建新元素,以便以前的绑定键控事件处理程序无法工作
替换以下代码

$(".select2").on('keyup', function (e) {


感谢您的回复我可以在不删除选定选项的情况下刷新选项吗?您可以,但为此,您需要写入逻辑,将选定选项保存在某个变量中,然后在刷新选定选项后,您需要读取该变量以选择以前选择的选项谢谢您的回复我可以在不删除选项的情况下刷新选项吗删除所选选项?您可以,但为此,您需要写入逻辑,将所选选项保存在某个变量中,然后在刷新选择选项后,您需要读取该变量以选择以前选择的选项
$(document).on('keyup',".select2", function (e) {