1

我有一个用于 URL 缩短的 JQueryFunction。
就像 $(".comment").shorten(); 我通常在页面加载时调用的那样。

我有一个DIV标签,其内容通过 Data-bind 填充,例如

<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 执行的自定义绑定。您可以选择在初始化和更新时运行代码。用你的 jQuery 函数来响应这两者就可以了。然后,您可以将 HTML 设置为:data-bind="shortenUrl: Element.Abstract"

有关示例,请参阅文档。

  1. 使用读写属性扩展您的可观察对象并响应写入。

您可以将您的 observables 视为具有读取和写入功能的属性。write 函数可以先调用你的 jQuery 函数,然后初始化值。

有关示例,请参阅文档。

我的偏好是自定义绑定。这是一个很好的解决方案,可以在多个地方使用而无需重复代码。

于 2012-09-11T11:09:52.310 回答