无法理解如何正确使用.on

时间:2013-03-25 10:10:52

标签: jquery

可能是一个愚蠢的问题,但对JQuery来说还是新手。

我有一个div作为按钮通过.load加载内容,问题是我在JS中加载的任何内容都无法正常工作。

HTML:

<div class="a" id="aa">Button #1</div>
</br>
</br>
<div id="loada"></div>
</br>
</br>
<div id="loadb"></div>

JS:

$(document).ready(function(){
  $('#aa').click(function(){
    $('#loada').load('load.htm #bb');
});
  $('#bb').click(function(){
    $('#loadn').load('load.htm #cc');
});

});

加载HTM:

<div class="b" id="bb">Button #2</div>
<div class="c" id="cc">Content #1</div>

我知道你需要使用.on来处理已经加载的JS来处理动态创建的HTML,但是我似乎无法正确使用它。

任何人都可以提供帮助吗?

编辑:下面有什么问题?

$('#bb').on('click', '#bb', function(event){
  $('#loadb').load('load.htm #cc');
});

3 个答案:

答案 0 :(得分:1)

$("#selector").on("click", function(event){
});

委托事件方法仅将事件处理程序附加到一个元素

 $("#selector").on("click", "selector", function(event){

    });

答案 1 :(得分:0)

您可以尝试单击加载的回调函数,如下所示:

$(document).ready(function(){
  $('#aa').click(function(){
    $('#loada').load('load.htm #bb',function(){
        $('#bb').click(function(){
            $('#loadb').load('load.htm #cc');
        });
    });
});

答案 2 :(得分:-1)

    $(document).ready(function(){
      $('#aa').on("click",function(){
        $('#loada').load('load.htm #bb');
           $('#bb').on("click",function(){
                   $('#loadn').load('load.htm #cc');
                 });
          });
    });

if you are using jQuery 1.9 use "on" , if using older version use "live". [live is deprecated remember.]