Почему код не cрабатывает?

144
29 сентября 2018, 02:30
    <!DOCTYPE html>
    <html>
<head>
    <meta charset="UTF-8">
    <script>
        document.getElementById('operate').onclick = init;
        function init() {
            var firstNumber = parseInt( document.getElementById('fNumber').value );
            var secondNumber = parseInt( document.getElementById('sNumber').value );
            var operator = document.getElementById('operator').value;
            if operator === 'plus' {
                var result = firstNumber + secondNumber;
            } else if operator === 'minus' {
                var result = firstNumber - secondNumber;
            } else if operator === 'multiply' {
                var result = firstNumber * secondNumber;
            } else if operator === 'divide' {
                var result = firstNumber / secondNumber;
            } else {
                alert('Ошибка');
            }
            document.getElementById('result').innerHTML = result;
        }
    </script>
</head>
<body>
    <form name = 'calculator'>
        <label>Первое число <input type = 'number' id = 'fNumber'></input></label>
        <br>
        <label>Второе число <input type = 'number' id = 'sNumber'></input></label>
        <select id = 'operator'>
            <option value = 'plus'>+</option>
            <option value = 'minus'>-</option>
            <option value = 'multiply'>*</option>
            <option value = 'divide'>/</option>
        </select>
        <br>
        <button id = 'operate'>Вычислить</button>
        <p>Результат <span id = 'result'></span></p>
    </form>
</body>

Answer 1

Потому что в момент выполнения

document.getElementById('operate').onclick = init;

на странице еще нет элемента с id='operate'.

Перенесите скрипт вниз перед </body>, или заверните его в

window.addEventListener("load", function(){
  ...
});

Заодно:

<button type='button' id='operate'>Вычислить</button>

и

if (operator === 'plus') {
READ ALSO
Выпадающие списки в блоке категорий

Выпадающие списки в блоке категорий

Вот готовый код для решения задачиПроблема в том, что слайдинга и изменений никаких не происходит

185
Показывать блоки на подобии ajax подгрузки

Показывать блоки на подобии ajax подгрузки

Как можно реализовать подгрузку блоков на подобии ajax подгрузки записей или товаров?

161
gulp сборка html в разные папки

gulp сборка html в разные папки

Подскажите как построить необходимый таск gulp сборки: есть папки с файлами pug -

161
Как реализовать список?

Как реализовать список?

как реализовать, чтобы при загрузке сайта, список выпадал, а потом сворачивался?

162