asp.net – Knockout.js – 数据绑定的javascript函数

有没有办法我可以像这样调用数据绑定的JavaScript函数
<span id="lblSomePropVal" data-bind="text: MySomeFunction(Someproperty())" ></span>

我想要做的是使用我的viewmodel的SomeProperty的值调用MySomeFunction。 My SomeFunction将根据传递的值返回一些文本,并将显示在span lblSomePropVal中。

我尝试了这个例子中写的方式,但是它会引发绑定错误

在这里缺少什么东西,还是有什么其他的办法呢?

这是我得到的错误

Microsoft JScript runtime error: Unable to parse bindings.
Message: [object Error];
Bindings value: text: MySomeFunction(Someproperty())

解决方法

您可以使用任意JavaScript表达式进行绑定,但请记住,它们在viewmodel的上下文中进行评估,因此表达式中的所有函数都必须是viewmodel的属性。在您的情况下,MySomeFunction必须是您的viewmodel的属性。如果您使用映射插件创建viewmodel,则可以附加其他函数viewmodel,如下所示:
var viewmodel = ko.mapping.fromJS(data.d)
viewmodel.MySomeFunction = function(...){...};

相关文章

ASP.NET与IIS是紧密联系的,由于IIS6.0与IIS7.0的工作方式的...
在之前的ASP.NET是如何在IIS下工作的这篇文章中介绍了ASP.NE...
这篇文章主要讲解了“WPF如何实现带筛选功能的DataGrid”,文...
本篇内容介绍了“基于WPF如何实现3D画廊动画效果”的有关知识...
Some samples are below for ASP.Net web form controls:(fr...
问题描述: 对于未定义为 System.String 的列,唯一有效的值...