Сделать событие клика на «отзывчивом» выпадающем элементе в JavaScript - PullRequest
0 голосов
/ 04 июля 2018

У меня есть maven-проект, и я получаю пользователей через искровой вызов из базы данных:

    function allUsers(){
        $.ajax({
            dataType: 'json', //to parse string into JSON object
            type: 'GET',
            url: 'webAthen/api/users',
            success: function (data){
                $('.userDropdown').html("");

                for(i=0; i < data.length; i++){
                   $('.userDropdown').append("<option>" + data[i].userName + "</option>");
                }
            }
        });
    }

Знайте, если я нажимаю на такого пользователя в Dropbox, я хочу, чтобы информация об этом пользователе была прямо в ярлыках вроде:

$('.userDropdown').val().click(function(){
        alert($('.userDropdown').val() + " was clicked :-)");

});

Я вставил предупреждение, чтобы получить уведомление с именем пользователя, по которому щелкнули, но оно не работает вообще. Если вам нужен дополнительный код, просто дайте мне знать! Я уже погуглил и нашел несколько примеров с ценностями фирмы. Но мои выпадающие записи динамически поступают из базы данных.

enter image description here

1 Ответ

0 голосов
/ 04 июля 2018

После просмотра вашего кода я чувствую, что теги option создаются динамически. Таким образом, вновь созданные опции / элементы не связаны Click слушателем.

$(document).on("click", ".userDropdown > option", function(){
        // Your code...
});

Приведенный выше код сначала прослушивает onClick событие document, а затем сужается до целевого элемента.

...