如何在分配函数时将变量传递给DOM元素-Javascript

如何在分配函数时将变量传递给DOM元素-Javascript,javascript,Javascript,有没有一种简单的方法将函数和变量链接到DOM元素 下面是一个如何工作的示例: 函数logfuncvalue{ console.logvalue } document.getElementById'logger1'。onclick=logfunc'this is button1' document.getElementById'logger2'。onclick=logfunc'this is button2' 下面的代码段用于在单击按钮时执行某些操作,并获取元素的值。是一个关键字,在本例中表示您

有没有一种简单的方法将函数和变量链接到DOM元素

下面是一个如何工作的示例:

函数logfuncvalue{ console.logvalue } document.getElementById'logger1'。onclick=logfunc'this is button1' document.getElementById'logger2'。onclick=logfunc'this is button2' 下面的代码段用于在单击按钮时执行某些操作,并获取元素的值。是一个关键字,在本例中表示您单击的按钮。换句话说,由于您单击的按钮在DOM中由document.getElementById'logger1'表示,因此您可以简单地使用它来表示它

我也不知道这是一个实际的错误,还是一个打字错误,但你拼写的函数像function一样。我在代码片段中为您修复了该错误

最后,您使用了.onclick。这是有效的代码,但不是最好的方法。因为我不想讨论这个问题,这不是主要问题,你可能想去了解更多

函数logfuncvalue{ console.logvalue } document.getElementById'logger1'。addEventListenerclick,函数{ logfunc'this'+this.value; }; document.getElementById'logger2'。addEventListenerclick,函数{ logfunc'this'+this.value; };
绑定到元素的函数将具有一个作用域,该作用域引用元素本身。因此,您可以通过这个.value获得输入的值

函数logfunc{ console.log'this'+this.value; } document.getElementById'logger1'。onclick=logfunc document.getElementById'logger2'。onclick=logfunc
提供回调/侦听器函数数据的方法有很多

一种是使用闭包。更改logfunc以返回函数的结束值

函数logfuncvalue{ 返回函数{ console.logvalue; } } document.getElementById'logger1'。onclick=logfunc'this is button1' document.getElementById'logger2'。onclick=logfunc'this is button2'
我们是否必须使用DOM中的值集,或者还可以从javascript向函数传递值?@JesseRezaKhorasanee您可以从javascript传递值。只需将此.value替换为您想要通过的内容。谢谢您的帮助Aniket G,这正是我要找的。@JesseRezaKhorasanee欢迎您。一般来说,我看到你用了。onclick。不要。它是有效的,但addEventListener更好。如果你想了解更多,请看这篇帖子:我明白了。谢谢你,Aniket,我不知道有什么不同。回答得很好。然而,关于堆栈溢出,我们通常希望您给出某种解释。不仅仅是工作代码OK,绑定到元素的函数将有一个作用域,该作用域引用元素本身。所以你可以通过这个来得到输入的值。值把解释放在答案里面。大多数人只是读答案,而不是评论。