如何使用knockoutjs调试选择值?我尝试使用data-bind="change: function(){debugger}
似乎不起作用。
<p data-bind="visible: $data[$item.settings.name]['navigation_type']() == 0" >
Link to Screen:<br/><select name="screen" data-bind="change: function(){debugger}, options: $item.element().screen.flow.navigable_screens, optionsText: function(item) { return item.attributes.name();}, optionsValue: 'permanent_id', value: $data[$item.settings.name].permanent_id"></select>
</p>
答案 0 :(得分:2)
我在调试KnockoutJS使用的内联值绑定时遇到了类似的问题。在我最近的项目中,我实现了一个松散的绑定模式,如下所述:
http://addyosmani.com/blog/understanding-mvvm-a-guide-for-javascript-developers/
您可以在JS中声明所有绑定,从而调试它们。然后,在html中使用自定义数据属性引用它们。
答案 1 :(得分:1)
不幸的是,淘汰赛的效果与您尝试使用它的方式不同。我假设从这段代码:data-bind="change:
你试图绑定到jquery更改事件?如果是这样,请查看选择列表如何在此处工作:
http://knockoutjs.com/documentation/selectedOptions-binding.html
在这里:
http://knockoutjs.com/examples/simpleList.html
Knockout比jQuery更优雅,但遵循MVVM模式而不是使用jQuery事件。我建议对MVVM模式有一个高层次的理解,同时完成http://learn.knockoutjs.com/
的所有教程。