Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Не могу решить простую задачу (https://javascript.ru/forum/misc/82642-ne-mogu-reshit-prostuyu-zadachu.html)

Alekosh 05.06.2021 12:14

Не могу решить простую задачу
 
Добрый день! Не получается написать простой код.

Задача заключается: Дан чекбокс, кнопка и абзац. По нажатию на кнопку, если чекбокс отмечен, выведите в абзац слово 'привет', а если чекбокс не отмечен, то слово 'пока'
Пытался хотя-бы сделать так, чтобы при нажатии на кнопку выводило в консоль - Истина. Но где-то совершил оплошность. Могу быть уверен что ошибка имеется внутри IF, так как написал неправильно. И вполне вероятно на строке 8, из-за того что функцию сделал не скрытным/анонимным. Голова в тумане, не могу решить :help:

p.s. да и возможно на строке второй innerHTML лишний, нет необходимости

<input type="checkbox" id="elem">
<input type="submit" id="btn">
<p id="p">text...</p>


let elem = document.querySelector('#elem')
    let btn = document.querySelector('#btn')
    let p = document.querySelector('#p')

    btn.addEventListener('click', func());
    elem = false;
    
    function func(){
        if(elem.checked = true){
            p.innerHTML =+ p.innerHTML + 'Привет'
        }
    }
    console.log(elem);

рони 05.06.2021 16:39

Alekosh,
строка 9 нет сравнения, 6 строка зачем?

рони 05.06.2021 16:43

Alekosh,
<!DOCTYPE html>

<html>
<head>
    <title>Untitled</title>
    <meta charset="utf-8">

    <script>
    document.addEventListener( "DOMContentLoaded" , function() {
    let elem = document.querySelector('#elem');
    let btn = document.querySelector('#btn');
    let p = document.querySelector('#p');

    btn.addEventListener('click', func);

    function func(){
           p.innerHTML += elem.checked ?  ' Привет' : ' Пока'
    }

      });
    </script>
</head>

<body>
<input type="checkbox" id="elem">
<input type="submit" id="btn">
<p id="p">text...</p>


</body>
</html>

Alekosh 05.06.2021 16:52

Блин, только недавно с мыслями сел за комп и решил. Прям недавно.
Просто убрал Elem = false; и убрал скобки от событии. Последним присвоил elem.checked == true так. И заработало.
Насчет Elem = false; понятие не имею, видимо сделал так чтобы в консоль проверять, работает ли. В голове туман было)))


Часовой пояс GMT +3, время: 15:33.