Где ошибка в скрипте ? При воспроизведении мои переменные 100% равны , но он не работает(
<script>
if(1 == 1) {}
else if(2 == 2) {
var select = document.getElementById("myselect");
select.removeChild(select.getElementById("myoption"));
};
</script>
во первых если a = 1
то else if
не выполняется. Во вторых метод getElementById
есть только у document
, а у select
его не будет зато есть querySelector
. А чтобы проверить 2 переменные есть &&
.
let a = 1;
let b = 2;
if (a == 1 && b == 2) {
var select = document.getElementById("myselect");
select.removeChild(select.querySelector("#myoption"));
}
<select id="myselect">
<option>weqweqwe</option>
<option>yrytrtyr</option>
<option id="myoption">qweqweqq</option>
<option>adasdasd</option>
</select>
Попробуй так
if(2 == 2 && 1 == 1) {
var select = document.getElementById("myselect");
select.removeChild(document.getElementById("myoption"));
};
<p>1</p>
<p>2</p>
<div id="myselect">
<p>3</p>
<p id="myoption">123</p>
</div>
<p>4</p>
Не лишним будет объяснить логику работы вашего кода (а конкретно - работу условных операторов) с помощью псевдокода.
<script>
if(a == 1) {}
else if(b == 2) {
var select = document.getElementById("myselect");
select.removeChild(select.getElementById("myoption"));
};
</script>
<script>
Если ( a равно 1) то {Делаем действие} // где { и } служат границами действия одного оператора
Иначе, если (b равно 2) то { // Здесь уже идёт проверка, только если в предыдущем if условие не соблюдается
var select = document.getElementById("myselect");
select.removeChild(select.getElementById("myoption"));
};
<script>
let a = 1;
let b = 2;
if (a == 1) {
document.getElementById("myselect").innerHTML="Текст 1";
}
else if (b == 2) {
document.getElementById("myselect").innerHTML="Текст 2";
}
else {
document.getElementById("myselect").innerHTML="Текст 3";
};
<p id="myselect">Привет Мир!</p>
let a = 2;
let b = 2;
if (a == 1) {
document.getElementById("myselect").innerHTML="Текст 1";
}
else if (b == 2) {
document.getElementById("myselect").innerHTML="Текст 2";
}
else {
document.getElementById("myselect").innerHTML="Текст 3";
};
<p id="myselect">Привет Мир!</p>
let a = 2;
let b = 3;
if (a == 1) {
document.getElementById("myselect").innerHTML="Текст 1";
}
else if (b == 2) {
document.getElementById("myselect").innerHTML="Текст 2";
}
else {
document.getElementById("myselect").innerHTML="Текст 3";
};
<p id="myselect">Привет Мир!</p>
let a = 1;
let b = 2;
if (a == 1) { //Если a равно 1
if (b == 1) { //Если b равно 1
document.getElementById("myselect").innerHTML="Текст 1";
}
else if (b == 2) { //Иначе, если b равно 2
document.getElementById("myselect").innerHTML="Текст 2";
}
else { //Иначе
document.getElementById("myselect").innerHTML="Текст 3";
};
};
<p id="myselect">Привет Мир!</p>
Этот вариант можно записать другим способом:
let a = 1;
let b = 2;
if (a == 1 && b == 1) {
document.getElementById("myselect").innerHTML="Текст 1";
}
else if (a == 1 && b == 2) {
document.getElementById("myselect").innerHTML="Текст 2";
}
else if (a == 1) {
document.getElementById("myselect").innerHTML="Текст 3";
};
<p id="myselect">Привет Мир!</p>
Выхода два (как в примере выше):
Можно так
<script>
let a = 1;
let b = 2;
if(a == 1 && b == 2){
var select = document.getElementById("myselect");
select.removeChild(select.getElementById("myoption"));
};
</script>
Или так
<script>
let a = 1;
let b = 2;
if(a == 1){
if(b == 2){
var select = document.getElementById("myselect");
select.removeChild(select.getElementById("myoption"));
};
};
</script>
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Добрый день, подскажите, пожалуйста, почему в первом случае this не работает? Спасибо!
Привет, есть пагинация, на сайте, например, при нажатии на одну из кнопок( их 10, допустим,) которые переключаются по страницам я подгружаю данные...
В эфире снова мои бестолковые вопросы, но все мы учимся, так что, пожалуйста, не вздыхайте и не делайте фейспалмы
Добрый день, мне нужно чтобы javascript вернул innerHTML 1ого элемента через функцию, но он почему-то это не делаетHTMLElement