Почему этот код Javascript не добавляет к вводу? - PullRequest
0 голосов
/ 06 ноября 2019

Я принимаю пользовательский ввод и использую Javascript, чтобы добавить 5 к предоставленному номеру. Javascript соединяет числа (1 становится 15, а не 6). Он также открывает его на новой странице;Я хочу это в своем собственном абзаце под ним. Я слишком усложняю это?

Я создал функцию для вызова, чтобы получить ввод пользователя, проверить, находится ли число между 0 и 10, и если да, добавить 5 к нему. Если это не так, то появится сообщение об ошибке, в котором говорится, что введите число от 0 до 10. Код внизу, а вот GitHub repo , который я также сделал для него.

// This code checks if input is between 0 and 10. If it is code will run (in this case addition), if not error message occurs. 
function number() {
    var myNumber = document.getElementById('inputNumber').value;
    if (myNumber >= 0 || myNumber <= 10) {
        var result = myNumber + 5;
        document.write(result).innerHTML;
    } else {
        document.write("Please input a number between 0 and 10.");
    }
}
<section>
        <span>Enter a number between 0 and 10.</span><br>
        <textarea id="inputNumber" label="Enter a number between 0 and 10."></textarea>
        <br>
        <button id="numberResult" onclick="number()">Click here to run addition Javascript!</button>
        <p id="myResult"></p>
    </section>

Таким образом, Javascript должен принять пользовательский ввод (число от 0 до 10) и добавить его к 5. Что происходит, так это то, что число просто помечается на 5 и открывается на новой странице, когда кнопкаНажмите, чтобы показать результат. то есть 1 становится 15, а не 6 (1 + 5).

1 Ответ

4 голосов
/ 06 ноября 2019

Сначала вам нужно будет преобразовать строку в целое число

var result = Number(myNumber) + 5;

, а затем присвоить значение тегу p с идентификатором myresult

document.getElementById("myResult").innerHTML = result;
...