Reatellino Ответов: 2

Почему я получаю одно и то же значение от переключателей?


Привет, ребята, у меня есть три переключателя. Я хочу присвоить их значение переменной, но это значение остается неизменным в зависимости от того, какая кнопка нажата.

Что я уже пробовал:

HTML

<input type="radio" name="age" onclick="checkAge(this)" value="child">less tan 18<br>
<input type="radio" name="age" onclick="checkAge(this)" value="adult">over 18<br>
<input type="radio" name="age" onclick="checkAge(this)" value="senior">over 65<br>


язык JavaScript
function checkAge(radio){
   var age = "";
  if(radio.value="child"){
    age = "child";
  }
  else if (radio.value="adult") {
    age = "adult";
  }
  else {
    age = "senior";
  }
  console.log(age);

}


Значение переменной "возраст" не меняется, почему?

2 Ответов

Рейтинг:
16

Karthik_Mahalingam

использовать == вместо =

if (radio.value == "child") {


но это сделает свою работу
function checkAge(radio) {
           console.log(radio.value);
       }


Reatellino

О боже, как же я мог это пропустить! хахаха. Спасибо:)

Karthik_Mahalingam

добро пожаловать :)

Рейтинг:
1

Prateek Dalbehera

Вы пропустили "==". Пожалуйста, откройте нижеприведенную ссылку (Tryit Editor v3. 3[^]) и скопируйте код для проверки.

<!DOCTYPE html>
<html>
<body>
<script>
function checkAge(radio){
alert(radio.value);
   var age = "";
  if(radio.value=="child"){
    age = "child";
  }
  else if (radio.value=="adult") {
    age = "adult";
  }
  else {
    age = "senior";
  }
  alert(age);

}
</script>
<form action="">
  <input type="radio" name="gender" onclick="checkAge(this)" value="child"> child<br>
  <input type="radio" name="gender" onclick="checkAge(this)" value="adult"> adult<br>
  <input type="radio" name="gender" onclick="checkAge(this)" value="senior"> senior
</form>

<p> * The selected value will be shown in the alert box upon select. </p>
</body>
</html>


Спасибо.