1

URL短縮用のJQueryFunctionがあります。 ページがロードされたときに私が通常呼び出すのと
同じよう に。$(".comment").shorten();

タグがDIVあり、そのコンテンツは次のようなデータバインドを介して取り込まれています

<div style="float: left; margin: 5px 0px 0px 30px; width: 92%" class="comment">  

<span data-bind="text: Element.Abstract"  style="text-align: justify;"  /> 

$(".comment").shorten(); コンテンツがバインドされた後、関数がコンテンツを短縮できるように、関数 を呼び出す場所についてのアイデアが必要 です。

4

1 に答える 1

0

いくつかのオプションがあります。

  1. カスタム バインディングを作成します。

KnockoutJS によって実行されるカスタム バインディングを作成できます。init と update の両方でコードを実行するオプションがあります。jQuery 関数を使用して両方に応答すると、うまくいきます。次に、HTML を次のように設定できます。data-bind="shortenUrl: Element.Abstract"

例については、ドキュメントを参照してください。

  1. 読み取りおよび書き込みプロパティでオブザーバブルを拡張し、書き込みに応答します。

読み取り関数と書き込み関数の両方を使用して、オブザーバブルをプロパティとして扱うことができます。書き込み関数は、最初に jQuery 関数を呼び出してから、値を初期化できます。

例については、ドキュメントを参照してください。

私の好みはカスタムバインディングです。コードを複製することなく、複数の場所で使用できる優れたソリューションです。

于 2012-09-11T11:09:52.310 に答える