假设我想在我的一个数据绑定上调用我的普通javascript函数。有可能这样做吗? 我试过了: -
<span data-bind = "click : outsideFn() ">hi</span>
<span data-bind=" click : function() { outsideFn() } ">hi</span?
显然,我的尝试没有成功。
编辑: - 在标签上添加jsfiddle,因为这似乎是jsfiddle的一个问题。
答案 0 :(得分:9)
是的,可以在数据绑定中调用普通的javascript函数。在你的项目中尝试它,它正在工作。 jsfiddle脚本中可能存在一些问题。
答案 1 :(得分:2)
是,你可以。
请注意click
绑定的 official Knockout documentation :
您可以引用任何JavaScript函数 - 它不必是视图模型上的函数。您可以通过单击:someObject.someFunction。
来引用任何对象上的函数
工作示例:
https://jsbin.com/ciwofayegi/1/edit?html,css,js,output
HTML
<span data-bind="text: txt, click: outsideFn"></span>
<强>的Javascript 强>
var outsideFn = function () {
alert("outside function");
};
var vm = {
"txt": ko.observable("some text")
};
ko.applyBindings(vm);