knockout.jsのclickバインディングは、普通に使うとデフォルトイベントがキャンセルされる。
(内部でpreventDefault()を呼び出しているようだ)
hoge.html
<div data-bind="click: clickEvent">
<a href="top.html"><!-- リンクに飛ばない・・・-->
</div>
これを防ぐには、指定した関数でtrueを返却するようにする。
hoge.js
var clickEvent = function () {
/*
なんか処理
*/
return true;
}
hoge.html
<div data-bind="click: clickEvent">
<a href="top.html"><!-- リンクが動く! -->
</div>
マニュアルに書いてあることだが、ちょっとハマったのでメモ。