我正在尝试在数据绑定中调用函数,但似乎没有任何工作。
以下是我的情景:
function ViewModel() {
this.Products = ko.observableArray([]);
this.FormatUrl = function (url) {
...
return ...
}
}
用法:
<tbody data-bind="foreach: Products">
...
<td><div data-bind="attr:{style: images.length > 0 ? 'background-image:url($root.FormatUrl(images[0]));' : ''}" /></td>
...
</tbody>
我还尝试使用引号'$root.Format..'
并获得了SyntaxError: Unable to parse bindings. Message: Unexpected identifier
调用我的函数的正确方法是什么?
答案 0 :(得分:0)
这里的问题是你将一个字符串与函数调用混合在一起:
'background-image:url($root.FormatUrl(images[0]));'
你要么需要如此构建它:
'background-image:url(' + $root.FormatUrl(images[0]) + ');'
或者也许从FormatUrl
函数返回整个字符串,而不是在视图中连接。