jQuery click事件不起作用

时间:2015-06-22 04:34:21

标签: jquery html click

我的.js代码

中存在问题

代码:

<script language="javascript">
$('#firstButton').click(function(){
    $.getJSON("traitementReady.php",function(data){
        $("#categories").empty();
        $.each(data.result, function(){
            $("#categories").append(" <button id="+this['Id']+"  class='categorie'>"+this['Libelle']+"</button>");
        });
    });
});

$('.categorie').click(function(){
    alert("Yes");
});
</script>

HTML:

<button id="firstButton" name="buttton">OK</button>
<div id="categories"></div>

如果我单击按钮(确定),我在div (id=categories)中拥有所有值(按钮类(类别)),但是如果我在点击按钮(OK)加载的按钮中单击一个按钮,我什么也得不到(没有警报(“是”))。

3 个答案:

答案 0 :(得分:2)

试试这种方式;

$(document).on('click','.categorie',function(){

alert("Yes");

 });

答案 1 :(得分:0)

将点击代码置于第一个按钮内,以便在创建后立即附加处理程序

$('#firstButton').bind('click',function(){
    ...
    $("#categories").empty();
    ...
    $('.categorie').off('click');//remove previous so as to avoid multiple bindings
   $('.categorie').on('click',function(e,o){
    alert("Yes");
  });
});

答案 2 :(得分:0)

“on”,“bind”和“live”存在一些细微差别,如果您的HTML是动态创建的,那么您可以使用

的jquery( “XXX”)生活( '点击',函数(){XXXXX});

绑定实际上会强制点击触发,但html应该已经存在。

希望这会有所帮助。

干杯!!