4

attr (href) バインディングとクリック バインディングを同じアンカー タグに設定し、関数をクリックにバインドしてナビゲーションを許可するかどうかを決定する方法を見つけようとしています。

単純な html では、これは次のようなものになります。その場合、decisionNavigation 関数が true を返した場合、「/」へのナビゲーションが発生し、false の場合、ナビゲーションが妨げられます。

現時点では、クリック機能をバインドすると、ナビゲーションが完全にブロックされます。

ノックアウトでこれを行う簡単な方法はありますか、それともカスタムバインディングのようなものが必要ですか?

ありがとう。

4

2 に答える 2

9

Looking at the knockoutjs documentation for the click binding, under note #3 it explains that by default the navigation to the href is canceled, but you can override it by returning true from your function.

于 2013-09-11T23:42:37.360 に答える
1

クリックは関数にバインドされていますか? その場合、関数にそのロジックを実行させてから、true/false を返します。false を返す場合、href で指定されたページへのナビゲーションを強制終了する必要があります。true が返された場合、ナビゲーションを続行する必要があります。

'a href="mypage.html" onclick="return myfunction'

関数 myFunction() { return (my condition == true) ? true : false; }

于 2013-09-11T23:26:00.390 に答える