与params的onclick调用
onclick call with params
我有一个函数,如下所示:
menu[0].onclick = function() {
filters.reset_all();
clients.get();
}
因此,当用户单击第一个菜单元素时会调用它。现在我需要从另一个地方称之为,我所做的是:
if (li.onclick) { //li and menu[0] above are the same
li.onclick.call();
}
而且效果很好。
但现在我需要将一些params传递给onclick
函数。我尝试过这个.call(some_param);
,但onclick
中的arguments
数组是空的。
我做错了什么?
编辑:更改为:
menu[0].onclick = function(arg) {
console.log(arg);
filters.reset_all();
clients.get();
}
和
li.onclick.call(li,param);
仍然没有
.call()
的第一个参数是this
指针的值。第二个、第三个等参数将传递给函数。如果您要显式设置this
指针,则只需要使用.call()
。否则,您可以直接调用函数li.onclick()
。
事件处理程序通常由系统调用,当这种情况发生时,它们会作为第一个参数传递给事件对象。如果您想要一个使用不同参数的函数,则应该为此创建自己的函数,而不要使用事件处理函数。如果需要,您的事件处理程序也可以调用其他函数。
menu[0].onclick = function() {
myFunc("aaa");
}
function myFunc(arg1) {
// do whatever here
filters.reset_all();
clients.get();
}
if (li.onclick) {
myFunc("bbb");
}
它应该是
call(object, param1, param2, param3...);
在你的情况下,你可以写
li.onclick.call(li, param1);
call()
的第一个参数是上下文(在本例中为this
),其余参数按顺序进入参数数组。如果使用apply()
而不是调用,则只有两个参数:apply(this, arguments_array)
相关文章:
- 用beautifulsoup-python调用onclick事件
- 打开网页并自动调用OnClick功能
- 如何在javascript中调用onclick事件?我没有'我不想在我的HTML页面中使用任何事件
- 如何在按Enter键后调用onclick函数
- Selenium>如何使用Selenium Webdriver调用onClick javascript函数
- 在函数中传递参数,然后调用onClick函数
- 如何在类型为“”的输入上调用onclick函数;图像”;
- Javascript函数未调用onclick()和onsubmit()
- 如何在ASP.NET中从MenuItem调用onClick事件
- 使用没有URL的python脚本从网页下载文件,调用onClick函数
- 似乎未调用 Onclick 事件处理程序
- 如何在 document.write 中调用 onclick 函数
- 如何从另一个控件调用 onclick 事件
- 如何在 标记中调用 onclick 函数
- 调用 onClick 方法之前的 ASP 警报文本
- WordPress会自动调用onclick函数
- 调用 onclick 函数时会显示 2 个或更多字符
- 如何在 JavaScript 中动态创建的按钮上调用 onclick 函数
- 调用 ondblclick,而不调用 onclick-event
- 在表单提交后调用 onclick javascript 事件