2016-12-11 3 views
0

Hallo an alle und danke, dass du dir die Zeit genommen hast, diese Frage zu beantworten.Problem bezüglich der Webseite, die ich erstelle

Auf meiner Website habe ich versucht, drei Schaltflächen zu erstellen, die ich in HTML getan habe.

ON JS Ich habe ein Array oder Elemente erstellt und habe es mit DOM versucht. Wenn also jemand auf eine Schaltfläche klickt, wird das entsprechende Element im Array angezeigt, aber im Moment ist die Warnung nicht definiert Hilf mir und hilf mir den Fehler zu debuggen?

HTML hat:

<button id ="btn-0">Button 1!</button> 
<button id ="btn-1">Button 2!</button> 
<button id ="btn-2">Button 3!</button> 

Und JS hat:

var items = ['Sugar','Tea','Peper'] 
for (var btnNum=0; btnNum <items.length;btnNum++){ 
document.getElementbyId('btn-' + btnNum).onclick = function() { 
alert(items[btnNum]); 
}; 
} 

Kann mir bitte jemand sagen, wo ich einen Fehler auf der JS-Code und auf meinem Alarm getan habe ich nicht definiert erhalte statt die Elemente des Arrays bekommen?

Entschuldigung für die sehr Anfänger JS Frage!

+0

Dies liegt daran, Sie btnNum in Ihrer onClick Funktion – Kenny

+0

sind usinfg wenn Klick btnNum Wert sein wird 3 genannt wird ..... wie es für Schleife – Kenny

+0

gesetzt in ist, wenn Sie auf die Schaltfläche nicht für Schleife klicken ausgeführt Also .... Keine Hinrichtung ... –

Antwort

1
var items = ['Sugar','Tea','Peper'] 
for (var btnNum=0; btnNum <items.length;btnNum++){ 
    (function(btnNum){ 
    document.getElementById('btn-' + btnNum).onclick = function() { 
    alert(items[btnNum]); 
    }; 
    })(btnNum) 

} 
Verwandte Themen