【问题标题】:knockout attribute data binding not working淘汰赛属性数据绑定不起作用
【发布时间】:2017-12-14 18:29:20
【问题描述】:

当我只是对属性之一进行数据绑定时,它们会起作用。但是当我将它们与 attr 结合使用时,它们不起作用。淘汰赛3.4.2

<table  data-bind="foreach: listPlaces">
  <tr>
    <td>
       <button data-bind="attr: {click: $parent.onClick, text: marker.title}"></button>
    </td>
  </tr>
</table>

marker.title 只显示一个字符串,onClick 在谷歌地图中打开一个信息窗口。

【问题讨论】:

    标签: javascript knockout.js


    【解决方案1】:

    你的绑定应该是这样的

    <table  data-bind="foreach: listPlaces">
      <tr>
        <td>
           <button data-bind="click: $parent.onClick, text: marker.title"></button>
        </td>
      </tr>
    </table>
    

    首先,文本绑定不应该与 attr 标记一起使用,因为它是敲除用来更新元素内容的内部绑定,并且预计会这样工作。

    现在对于点击处理程序,以上是附加点击处理程序的正确方法,也许您可​​以使用 attr: { onClick : 'MyFunc'} 但我对此表示怀疑并且不推荐它!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-01-09
      • 1970-01-01
      • 2014-01-10
      • 2015-12-27
      • 1970-01-01
      • 1970-01-01
      • 2019-05-01
      相关资源
      最近更新 更多