Onclick事件监听器没有注册类

时间:2016-09-09 14:38:40

标签: jquery ajax

我有这段代码:

$(function () {
        $("#dataTable tbody tr").each(function () {
            var first = $(this).find("td:first").text();
            var second = $(this).find("td:nth-child(2)");
            var ulId = '#' + second.find("ul:first").attr('id');

            $(ulId).tagit({
                placeholder: '',
                maxTags: 3,
                inputWidth: 1,
                tagsChanged: function () {
                }
            });

            $.ajax({
                url: 'search.php',
                dataType: 'json',
                data: {
                    query: first
                },
                success: function(data) {
                    if(data.length > 1) {
                        $(ulId).tagit("fill", data);
                        //$(".tagit-label").one('click', function() {
                        //    console.log($(this).html());
                        //});
                    } else {
                        second.html(data);
                    }
                }
            });
        });

        $(".tagit-label").one('click', function() {
            console.log($(this).html());
        });
    });

点击具有tagit-label类的div后,我想做点什么。仅在AJAX响应成功返回包含多个元素的数组后才创建该类。因为click是一个事件监听器不应该这不重要吗?如果我在success:中有针对AJAX调用的click事件,它会执行点击代码中的任何内容,以表示已创建标记的次数。有什么方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

将您的点击事件监听器放回success:并拨打Ajax电话method:'POST'

它应该有用。

由于