JQuery Chosen:正确使用触发器(" liszt:updated")

时间:2017-01-08 01:04:19

标签: jquery jquery-plugins jquery-chosen

我对城市和地区有两种不同的选择。当用户更改城市选择时,我更新区域选择。

有我的代码:

$("#city").change(function () {
    $.ajax({
        url: '<?php echo SITE_URL; ?>/process/getDistricts?city=' + $(this).val(),
        type: 'get',
        success: function (data) {
            data = JSON.parse(data);
            var districts = $("#district");
            districts.empty();
            districts.append('<option value=""> İlçe Seçiniz </option>');
            for (var i = 0; i < data.length; i++) {
                districts.append('<option value="' + data[i].ID + '">' + data[i].name + '</option>');
            }
            $("#district").trigger("liszt:updated");

        },
        error: function (xhr, ajaxOptions, thrownError) {
            console.log(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
        }
    });
});

如果我没有添加districts.append('<option value=""> İlçe Seçiniz </option>');行,则会自动选择第一个分区选项。

我的&#34;搜索 - 选择 - 关闭&#34;按钮消失了这样:

enter image description here

如何正确更新我的liszt选择?

1 个答案:

答案 0 :(得分:1)

从选中的documentation

  

注意:在单次选择时,假定选择第一个元素   通过浏览器。要利用默认文本支持,您   将需要包含一个空白选项作为您的第一个元素   选择清单。

这意味着您需要添加一个空白元素作为默认文本的占位符。

另外,我看不到&#34;搜索 - 选择 - 关闭&#34;在你的代码或图像中。