首页 > 解决方案 > 传递正确的一系列参数

问题描述

在一个 HTML 页面中,我有 2 个这样的 onclick 事件:

onclick="clear_input('button1', 'hello1','world1');"
onclick="clear_input('button2','hello2','world2');"
 

在一个 JS 文件中,我有这个:

function clear_input(a, b, c) {

var text = document.getElementById(b);

var button = document.getElementById(a);

…

}

这一切都有效。现在我想摆脱内联 JS 并在 JS 文件中实现一个 addEventListener ,它可以处理 2 个 onclick 事件中的任何一个。我如何传递正确的一系列论点?

标签: javascript

解决方案


如果只有两个,那么创建一些通用解决方案可能不值得。只需单独添加每个呼叫。

document.getElementById('whatever1').addEventListener('click', function(){
    clear_input('button1', 'hello1', 'world1');
});
document.getElementById('whatever2').addEventListener('click', function(){
    clear_input('button2', 'hello2', 'world2');
});

如果您需要更通用的解决方案,则需要更多地解释这种情况,例如为什么参数是“button1”、“hello1”、“world1”。


推荐阅读