Javascript 从bootstrap popover内容内部执行js
在bootstrap 2.3 popover中,我显示了一些html代码。当我点击它时,我需要触发一个js函数,但我很难做到这一点 如果我单击包含在popover中呈现的HTML的div,而不是单击popover本身中的内容,那么js函数将正确执行 这是我的咖啡Javascript 从bootstrap popover内容内部执行js,javascript,twitter-bootstrap,popover,Javascript,Twitter Bootstrap,Popover,在bootstrap 2.3 popover中,我显示了一些html代码。当我点击它时,我需要触发一个js函数,但我很难做到这一点 如果我单击包含在popover中呈现的HTML的div,而不是单击popover本身中的内容,那么js函数将正确执行 这是我的咖啡 $('[data-toggle~=popover]').popover({ html: true content: -> $("#content").html() }) $(".updateit").on "
$('[data-toggle~=popover]').popover({
html: true
content: ->
$("#content").html()
})
$(".updateit").on "click", ->
console.log "pippo"
还有html
<a data-placement="right" data-toggle="popover" href="#">click me</a>
<div id="content">
<div class="updateit" style="color:red">abc</div>
</div>
abc
出于测试目的,div#内容不会隐藏,如果我单击它,“pippo”会在控制台上打印出来,但是如果我单击popover内容(html看起来相同),控制台上不会打印任何内容
有没有办法从popover内容内部调用js函数
谢谢。这看起来像是一个常见的jQuery事件绑定问题。可能发生的是
$(“.updateit”)。在“单击”时,()->…
在创建popover之前正在运行。该特定函数只会将单击事件绑定到现有元素;新的将不会应用该事件。由于popover在运行后将使用“updateit”类创建自己的元素,因此该事件不会应用于它
幸运的是,修复相当容易<代码>$(文档)。在“单击”时,'.updateit',()->…应该可以完成这项任务。这将应用于文档中“updateit”类的每个元素,无论它是何时创建的
相关jsbin-