我創建了一個虛擬鍵盤,並試圖用出現在按鈕上的字母填充輸入框。我有以下功能:在Javascript/HTML中從動態創建的按鈕中讀取值
此功能需要一個字符,使按鈕與焦炭作爲其值:
function keyButton(char) {
var btn = document.createElement("button"); //create button
btn.innerText = char; //fill it with char
btn.id = "btn";
keyStroke()
return btn;
}
這個函數創建了所有字母的按鈕:
var keyList = "QWERTYUIOPASDFGHJKLZXCVBNM";
for (i in keyList)
{
var button = keyButton(keyList[i]);
document.body.appendChild(button)
}
這功能是問題,它應該讀取按鈕的值並將其附加到輸入框:
function keyStroke() {
document.getElementById("searchBar").value += document.getElementById("btn").innerText;
}
的輸入框的HTML是像這樣:
<input id="searchBar" class="inputBar" placeholder="Enter something" />
1.你的按鈕的每一個具有完全相同的(假設是唯一的)id:'btn' 2. keyStroke()在你定義一個按鈕時調用,而不是當你點擊它時調用 –
Y您需要創建點擊事件處理程序,並且可能讀取按鈕的「值」屬性的值 – aross