Javascript 提前从jquery类型获取值

Javascript 提前从jquery类型获取值,javascript,php,jquery,codeigniter,Javascript,Php,Jquery,Codeigniter,我已经用jquerytypeahead库实现了实时搜索,对于从数据库接收数据的情况来说,它工作得很好,我在前端遇到了问题 现在,typeahead在显示数据方面运行良好。我想做的是在从下拉列表中生成的li的的href属性中添加url,但到目前为止,我还无法使用li的附加onclick方法 HTML <input autocomplete="off" id="type" placeholder="Search for product / category"/> 这是调用typea

我已经用jquerytypeahead库实现了实时搜索,对于从数据库接收数据的情况来说,它工作得很好,我在前端遇到了问题

现在,typeahead在显示数据方面运行良好。我想做的是在从下拉列表中生成的
li的
的href属性中添加url,但到目前为止,我还无法使用
li的
附加
onclick
方法

HTML

  <input autocomplete="off" id="type" placeholder="Search for product / category"/>
这是调用typeahead时生成的html结构

这就是我迄今为止所尝试的

$(".typeahead").on( "click", "li", function() {
            alert("1");
        });

        $(".typeahead .dropdown-item").delegate("click", function(){
            alert("12");
        });

        $(".typeahead .dropdown-item").on("click", function(){
            alert("123");
        });

我从这个线程复制了一个代码,但它仍然不适用于我的情况。我不知道为什么它不适用于任何帮助?

由于要将单击事件附加到的元素将通过打印头动态添加到DOM中,因此您需要这样做:

$('body').on('click', '.typeahead .dropdown-item', function() {
    // do something
});

一个理论上的问题:live/delegate方法做了完全相同的事情,为什么它不起作用?live和delegate已被弃用。
$(".typeahead").on( "click", "li", function() {
            alert("1");
        });

        $(".typeahead .dropdown-item").delegate("click", function(){
            alert("12");
        });

        $(".typeahead .dropdown-item").on("click", function(){
            alert("123");
        });
$('body').on('click', '.typeahead .dropdown-item', function() {
    // do something
});