我阅读了文档http://knockoutjs.com/documentation/attr-binding.html,但无法理解原因
<img data-bind="attr: {src: imgname}"/>
有效但
<img data-bind="src: imgname"/>
没有......
此attr
绑定究竟做了什么以及src
有什么特别之处?
答案 0 :(得分:3)
为什么"src: imgname"
有效?
Knockout中只有几个用于控制文本外观的内置绑定,如下所示:
因此,您看到src
不在列表中。所有构建的都是或多或少是自我展示的,但是当你想要绑定到某些其他属性而没有内置支持时,例如src
您需要使用通用attr
语法。
正如documentation中所述:
attr绑定提供了设置any值的通用方法 属性用于关联的DOM元素。这很有用,例如, 当你需要设置一个元素的title属性时,一个src的src img标签,或基于视图模型中值的链接的href
答案 1 :(得分:1)
'attr'是Knoclout.JS的预定义绑定,相反,第二个示例中的'src'不是。