如何使用knockoutjs在单击函数中传递固定参数?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用knockoutjs在单击函数中传递固定参数?相关的知识,希望对你有一定的参考价值。
我想这样做:
<button type="button" data-bind="click: myFunction(1)" </button>
<button type="button" data-bind="click: myFunction(2)" </button>
<button type="button" data-bind="click: myFunction(3)" </button>
但如果我每次页面启动都这样做,这个函数就会被触发。我不想要这个,我希望它在我点击时触发
答案
在myFunction.bind
绑定中使用click
可以解决问题。你可以试试这个:
<button type="button" data-bind="click: myFunction.bind($data, 1)">one</button>
<button type="button" data-bind="click: myFunction.bind($data, 2)">two</button>
<button type="button" data-bind="click: myFunction.bind($data, 3)">three</button>
在View Model中定义myFunction
,如下所示:
self.myFunction = function(n) {
alert(n);
}
仅响应实际按钮点击而不是页面加载时才会触发警报。
请注意,虽然self.myFunction
定义只有一个参数myFunction.bind($data, 1)
应该有额外的$data
参数。
以上是关于如何使用knockoutjs在单击函数中传递固定参数?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 knockoutJs 将参数 foreach 从 html 传递到控制器
将 knockoutjs 视图模型传递给多个 ajax 调用
在C语言中,定义一个函数的形参和实参之间具体是如何进行参数传递的?