MeteorJS:在弹出窗口中不会触发模板事件

Posted

技术标签:

【中文标题】MeteorJS:在弹出窗口中不会触发模板事件【英文标题】:MeteorJS: Template event is not trigger when in popover 【发布时间】:2015-06-29 23:38:11 【问题描述】:

我有这个代码。问题是单击时未执行按钮视图车单击。按钮视图车位于弹出框内。任何想法如何触发按钮点击视图车的事件?

header.jade

template(name="header")
  ul.nav.navbar-nav.navbar-right
    li
      button.btn.btn-info.cart(name="cart", type="button", data-container="body", data-toggle="popover", data-placement="buttom") Cart 
    #popover-content.hide
        +cart

header.coffee

Template.header.rendered = ->
  $('.cart').popover
    placement : 'bottom'
    html: true
    title: 'cart'
    content: ->
      $('#popover-content').html()
    return

cart.jade

template(name="cart") 
    table
        tr
         td
           button.viewcart  View Cart

cart.coffee

Template['cart'].events
  "click .viewcart": ->
      console.log 'im click!' 
      return

【问题讨论】:

【参考方案1】:

您正在使用此$('#popover-content').html() 创建一个新元素,它不会附加到 blaze(不知道这是否是正确的放置方式)。我在谷歌地图上遇到了同样的问题。弹出框在 DOM 中的什么位置?

编辑:您可以做的一件事是不要以这种方式创建模板,只需将其渲染到某个地方并使其在您需要时出现。你可以在这里看到他们是如何做到的https://github.com/yogiben/meteor-autoform-modals/。

【讨论】:

以上是关于MeteorJS:在弹出窗口中不会触发模板事件的主要内容,如果未能解决你的问题,请参考以下文章

jquery popup中的事件被多次触发

Leaflet Popup 未注册点击事件

使用带有实际模板的 Joomla 仅在弹出窗口中显示文章

用jquery代码如何实现当我点击“查看”按钮时,在弹出窗口或弹出页面,显示数据库的详细数据

Shiny:通过单击 valueBox 触发弹出窗口

Magnific-popup 只是指向 youtube 视频的链接,不会在弹出窗口中显示