AJAX调用后jQuery功能无法正常工作

Aki*_*son 5 html ajax jquery

我似乎遇到了jQuery点击功能的问题,我有以下代码:

j$(document).ready(function(e) {

setInterval(function(){

    j$.ajax({
      url: "/include/new_customer.php",
      cache: false
    })
      .done(function( html ) {
        j$( "section .col-xs-12" ).append( html );
      });


  },80000);

    j$('a.dropDown').click(function(e){
        e.preventDefault();
        j$(this).closest('.row').next().toggleClass('hidden');
    });
});
Run Code Online (Sandbox Code Playgroud)

使用以下HTML(抓住必要的内容):

<div class="col-xs-12>
    <div class="row">
        <a href="#" class="dropDown">Manage</a>
    </div>
    <div class="row hidden">
        <!-- stuff -->
    </div>    
</div>
Run Code Online (Sandbox Code Playgroud)

您可以看到,如果单击a标记,则隐藏类的行将切换.我有另外两行的AJAX,所以它会像这样:

<div class="col-xs-12>
        <div class="row">
            <a href="#" class="dropDown">Manage</a>
        </div>
        <div class="row hidden">
            <!-- stuff -->
        </div>  
        <div class="row">
            <a href="#" class="dropDown">Manage</a>
        </div>
        <div class="row hidden">
            <!-- stuff -->
        </div>    
    </div>
Run Code Online (Sandbox Code Playgroud)

我的问题是,对于新数据,当我点击标签时,切换功能不起作用.我已经完成了一些测试,例如从inspect元素中删除隐藏的类,并且有数据要显示.我不知道发生了什么事.请帮忙!

Fel*_*lix 13

您需要使用事件委派来附加动态加载元素的事件:

j$(document).on('click','a.dropDown',function(e){
    e.preventDefault();
    j$(this).closest('.row').next().toggleClass('hidden');
});
Run Code Online (Sandbox Code Playgroud)

  • 你是血腥的美女伴侣.这就是我工作所需要的.我只是不知道在Google上搜索什么,感谢百万! (2认同)