Мой HTML:
<h3>Please enter your discount code</h3>
<input type="text" name="discountCode" id="discountCode">
<div id="message"></div>
<button id="myButton" onclick="myFunction()">Click Me</button>
Когда я нажимаю кнопку, я хочу вызвать огонь myFunction() в событии.
Мой JavaScript:
function myFunction(){
var discount;
var discount = document.getElementById("discountCode").innerHTML;
switch(discount){
case "SAVE10":
document.getElementById("message").innerHTML = "you are saving 10% on this order.";
break;
case "SAVE15":
document.getElementById("message").innerHTML = "you are saving 15% on this order.";
break;
default:
document.getElementById("message").innerHTML = "please enter a valid discount code.";
break;
}
}
Я хочу вывести сообщения в элемент div из "сообщения". Когда я запускаю этот код и вводю код скидки, единственной строкой, которая выводится в div сообщения, является строка по умолчанию:
введите действующий код скидки.
Может ли кто-нибудь направить меня в правильном направлении.
Спасибо!
Используйте значение .value
вместо .innerHTML
чтобы получить значение из input
тега.
Проверьте ниже:
function myFunction() {
var discount = document.getElementById("discountCode").value;
switch (discount) {
case "SAVE10":
document.getElementById("message").innerHTML = "you are saving 10% on this order.";
break;
case "SAVE15":
document.getElementById("message").innerHTML = "you are saving 15% on this order.";
break;
default:
document.getElementById("message").innerHTML = "please enter a valid discount code.";
break;
}
}
<h3>Please enter your discount code</h3>
<input type="text" name="discountCode" id="discountCode">
<div id="message"></div>
<button id="myButton" onclick="myFunction()">Click Me</button>
Также удалена var discount
вы указали дважды. Это не требовалось.
Прочтите это для получения дополнительной информации: https://www.w3schools.com/jsref/prop_text_value.asp