我有一個功能可以讓我設定按鈕文本和 onclick 屬性
兩者都設定為文本引數
這是函式:
function assignButton(n,text,onclick){
var btn = document.getElementById("button" n)
btn.innerHTML = text
btn.onclick = function(){onclick}
}
這就是我所說的
assignButton(13,"Exit Program","alert('Goodbye')")
按鈕文本已正確分配,但我要執行的文本未在 onclick 屬性中分配。如果我直接在函式中輸入一些代碼,它會起作用,但當我將它作為文本傳遞時則不起作用......
關于我可以做些什么來使這個概念發揮作用的任何想法?
在此先感謝您的幫助...
uj5u.com熱心網友回復:
將函式assignButton作為onclick引數傳遞給,然后您就可以使用它來呼叫按鈕的onclick設定器。
function assignButton(n,text,onclick){
var btn = document.getElementById("button" n)
btn.textContent = text;
btn.onclick = onclick;
}
assignButton(13,"Exit Program",() => alert('Goodbye'))
<button id="button13">button</button>
我建議在插入文本時使用.textContent而不是- 它更安全、更快。.innerHTML
ID 也不應該是動態的。您可以考慮使用類,然后選擇第nth 個類。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/388128.html
標籤:javascript 事件监听器
下一篇:通過點擊呼叫獲取
