Я пытаюсь изменить innerHTML
элемента или даже просто предупредить что-то, когда пользователь нажимает на радио.
Это мой JavaScript:
function ways() {
var set = document.getElementsByName("lala");
if(lala[0].checked) {
alert("this is so cool it finally working");
}
else if(lala[1].checked) {
alert("Alhamdulillah it all going great");
}
}
И это мой HTML:
<input type="radio" name="lala" value="human" onclick="ways()">
<input type="radio" name="lala" value="robot" onclick="ways()">
Вы помещаете результат document.getElementsByName("lala")
в переменную с именем set
. Вы никогда не определяли переменную lala
, поэтому для доступа к этим элементам вы должны получить доступ к set
.
Все остальное о вашем коде было правильным.
function ways() {
var set = document.getElementsByName("lala");
if (set[0].checked) {
alert("this is so cool it finally working");
} else if (set[1].checked) {
alert("Alhamdulillah it all going great");
}
}
<input type="radio" name="lala" value="human" onclick="ways()">
<input type="radio" name="lala" value="robot" onclick="ways()">
Вы не используете переменную, set
в условии, в котором находятся переключатели:
function ways() {
var set = document.getElementsByName("lala");
if(set[0].checked) {
alert("this is so cool it finally working");
}
else if(set[1].checked) {
alert("Alhamdulillah it all going great");
}
}
<input type="radio" name="lala" value="human" onclick="ways()">
<input type="radio" name="lala" value="robot" onclick="ways()">
js-движок не мог найти переменную как lala
. Вероятно, вы получаете Uncaught ReferenceError: lala is not defined
в консоли.
используйте приведенный ниже код
function ways() {
if(document.getElementsByName("lala")[0].checked) {
alert("this is so cool it finally working");
}
else if(document.getElementsByName("lala")[1].checked) {
alert("Alhamdulillah it all going great");
}
}