我想通過點擊按鈕動態創建一個列表。該列表已正確創建。這個列表中的每個項目都有一個帶有不同參數的onclick函數。因此,通過點擊每個項目,屏幕上會打印另一個字(「薩博」或「沃爾沃」或「寶馬」)。問題是,通過點擊列表中的每個項目,只打印最後一個字(「BMW」)。通過不同的參數爲每個項目的onclick函數創建列表
這是我的HTML和JavaScript代碼。
function myfunction1() {
var i;
var cars = ["Saab", "Volvo", "BMW"];
for (i = 0; i < cars.length; i = i + 1) {
var y = cars[i];
var mycar = cars[i];
var li = document.createElement('li');
var a = document.createElement('a');
a.innerHTML = y;
a.onclick = function() {
showcar(mycar);
}
li.appendChild(a);
document.getElementById("allcars").appendChild(li);
}
}
function showcar(car) {
document.getElementById("demo").innerHTML = car;
}
<button onclick="myfunction1()">Perla</button>
<ul>
<p id="allcars"></p>
</ul>
<p id="demo"></p>
如果我點擊薩博或沃爾沃,寶馬BMW僅將在屏幕上進行打印。我想要的是:當我點擊列表中的薩博項目時,打印出「薩博」。當我點擊沃爾沃項目時,「沃爾沃」被打印。當我點擊「寶馬」項目時,「寶馬」被打印。
這不會工作。檢查 – Durga
@Durga它將工作.. –
它只是缺乏與功能顯示車.. –