Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 淘汰:无法绑定到按钮';s使用引导弹出窗口时的单击事件_Javascript_Twitter Bootstrap_Knockout.js - Fatal编程技术网

Javascript 淘汰:无法绑定到按钮';s使用引导弹出窗口时的单击事件

Javascript 淘汰:无法绑定到按钮';s使用引导弹出窗口时的单击事件,javascript,twitter-bootstrap,knockout.js,Javascript,Twitter Bootstrap,Knockout.js,当用户单击按钮时,我在执行Javascript时遇到问题。不幸的是,这是一个相当复杂的页面,我无法显示全部内容,但希望下面的小片段就足够了 为了简化这个过程,我甚至没有在数据绑定的Knockout绑定中调用实际的视图模型,而是简单地发出警告 <div data-bind="foreach: MyComputedStuff()"> ... <div class="popover-content"> <button onclick="alert('bar')

当用户单击按钮时,我在执行Javascript时遇到问题。不幸的是,这是一个相当复杂的页面,我无法显示全部内容,但希望下面的小片段就足够了

为了简化这个过程,我甚至没有在
数据绑定的Knockout绑定中调用实际的视图模型,而是简单地发出警告

<div data-bind="foreach: MyComputedStuff()">
...
  <div class="popover-content">
    <button onclick="alert('bar')">
      This works!
    </button>
    <button data-bind="click: function(data, event){alert('foo')}">
      THIS DOES NOT WORK
    </button>
  </div>
...
</div>

感谢haim770、Alexander、UweB和mhu的帮助。

一位同事指出了敲除不绑定单击事件的原因:引导程序正在修改DOM。

通过使用Chrome扩展,我的同事指出,包含我的按钮的div元素不在我告诉Knockout将绑定应用于。。。Bootstrap移动了它


我正在使用Bootstrap的功能,我的按钮位于一个弹出框内,Bootstrap已从我正在使用的div中移出。
foreaching。

单击时发生了什么?有错误吗?您是否检查了控制台中的错误?@haim770控制台中没有任何内容,页面的其余JS继续工作。在Chrome和IE9中尝试过。通常在执行clickbinding时,方法本身在ViewModel中声明如下。可能是KO没有按照您的方式设置来处理函数?似乎是
KO的问题。computed
,请参见(computed)vs(simple observable array)按钮的父对象上是否有(on)click处理程序?是否与此有关:
<a rel="tooltip" 
  title="Favourite App"
  data-bind="click: function(data, event){$root.ToggleFavorite(data)}">