簡體   English   中英

如何在JavaScript中使用函數作為另一個函數的參數

[英]how to use a function as a argument of another function in javascript

<input type="button" id="one" value="1" OnClick='addValue("function(){document.getElementById("one")}")'>

我想將此輸入的ID作為addValue函數的參數傳遞。 這里的錯誤在哪里?

您太復雜了,使用this

<input type="button" id="one" value="1" OnClick='addValue(this.id)'>

首先,將事件監聽器移出HTML,然后可以從單擊事件目標中訪問該值。

document.getElementById('one').addEventListener('click', function(evt) {
    var value = evt.target.value;
    addValue(value);
});

編輯:或使用@tymeJV的解決方案,盡管我建議遠離內聯事件。

如果您真的想將函數用作另一個函數的參數,然后看看匿名函數http://en.wikibooks.org/wiki/JavaScript/Anonymous_Functions ,則SetTimeout是一個很好的例子,您可以將函數作為參數傳遞給它在特定時間后致電。

但是我認為您可以在不傳遞函數作為@tymeJV答案中提到的參數的情況下完成此操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM