У меня есть эти четыре кнопки, и мне нужно, чтобы они отображали предупреждающее сообщение в зависимости от того, какая кнопка нажата. Я новичок в программировании и пытаюсь заставить эту функцию работать. Но ничего не происходит, когда я нажимаю кнопки. Я не уверен, правильно ли я применяю событие onclick. Я не хочу вставлять его в разметку html. Может ли кто-нибудь мне помочь? Что я делаю здесь неправильно?показать сообщение с помощью JavaScript
Это мой HTML и Js код:
<body>
<ul style="list-style-type:none" id="buttons">
<li><input type="button" value="English" id="english"/></li>
<li><input type="button" value="Spanish" id="spanish"/></li>
<li><input type="button" value="Hebrew" id="hebrew"/></li>
<li><input type="button" value="French" id="frech"/></li>
</ul>
<script language="javascript" type="text/javascript" src="lab6functions.js">
</script>
</body>
function buttonClick() {
if(!document.getElementsByTagName) return false;
if(!document.getElementById) return false;
//store buttons in variable buttonsList
var buttonsList = document.getElementsByTagName("input");
//iterate through all elements of buttonList
for (var i = 0; i<buttonsList.length; i++) {
//store each element to the variable buttons and get each individual id for each button
var buttons = buttonsList[i].getElementById("id");
//when a button is clicked, display the alert box with the message corresponding to each language
switch(buttons) {
case "english":
alert("Hello! How are you?");
break;
case "spanish":
alert("Hola! Como estas?");
break;
case "hebrew":
alert("Shalom!");
break;
case "french":
alert("Bonjour!");
break;
default:
alert("Please select a language");
}
buttons.onclick = buttonClick();
}
}
Вы ничего на самом деле соединить, что 'не сделано buttonClick' для события 'click' для этих элементов HTML. –
он сделал (последняя строка, buttons.onclick = buttonClick();) но внутри функции. Попробуйте переместить эту строку за пределы этой функции – ItayB