我有以下代码:

<button data-bind="click:function(){ saveTask(), toggle()}">Save</button>


我的saveTask函数如下:

self.saveTask = function(item){
    alert(JSON.stringify(item));
}


我收到一个未定义项目的错误。

通常,当我将一个功能绑定到我的点击时,它就是:

<button data-bind="click:saveTask">Save</button>


然后,当我单击绑定多个函数时,我当前正在处理的项目将传递给saveTask函数,我如何将当前项目(self)传递给saveTask函数?

最佳答案

您没有将参数传递给绑定函数或其调用的函数。您的绑定应如下所示:

<button data-bind="click: function(item){ saveTask(item); toggle(item); }">Save</button>

当您编写data-bind="click: saveTask"时,Knockout会这样调用saveTasksaveTask(item)。由于您要为其提供匿名功能,因此您需要执行相同的操作。

09-18 15:37