Оператор переключения Javascript внутри функции, которая вызывается при возникновении события onclick

1

Мой 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 сообщения, является строка по умолчанию:

введите действующий код скидки.

Может ли кто-нибудь направить меня в правильном направлении.

Спасибо!

Теги:
switch-statement
onclick

1 ответ

2

Используйте значение .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

  • 0
    Отлично работает! Спасибо Вик Джордан!
  • 0
    @ Марк рад слышать!
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню