通过单击Handlebars插入的锚元素来触发事件

时间:2014-09-06 13:54:18

标签: javascript jquery handlebars.js

好的,我们说我用把手附加下面的锚元素。 我想点击它之后触发一个事件。但是,在我插入它之后,javascript事件就不起作用了。这就是我的意思:

<div class="list-group" id="listGroup">
    <a class="list-group-item" href="#" name="jumanji">JUMANJI</a>
    <a class="list-group-item active" href="#" name="looper">LOOPER</a>
    <a class="list-group-item" href="#" name="lone_survivor">LONE SURVIVOR</a>
    <a class="list-group-item" href="#" name="the_dark_knight">THE DARK KNIGHT</a>
    <a class="list-group-item" href="#" name="world_war_z">WORLD WAR Z</a>
    <script id="list" type="text/x-handlebars-template">
        {{#fill this}}
        <a class="list-group-item" id="joe" href="#">{{name}}</a>
        {{/fill}}
        </script>
</div>

在我插入带有把手的最后一个锚元素后,我想通过点击它来触发一个事件,例如:

$('#joe').click(function () { alert ("hi"); }

但是,这就像乔并不存在,但是,我可以通过点击其他东西并从那里引用它来达到乔。让我们说有另一个带有id&#34; moe&#34;的元素,然后我可以这样做。

$('#moe').click(function () { alert($('#joe').html()); }

希望我清楚明白,谢谢你。

1 个答案:

答案 0 :(得分:1)

使用 on() 函数尝试事件委派:

$(document).on('click','#joe',function () { alert ("hi"); }