Ограничение выбора числа, которое можно выбрать в форме, чтобы избежать простых чисел - PullRequest
0 голосов
/ 22 ноября 2018

У меня есть форма, которую заполняет клиент. Один из вариантов - выбрать количество блоков для покупки.На данный момент это ограничено от 1 до 49, но я хочу ограничить пользователя дополнительными числами, которые не являются простыми и «выделяют серым» любое число, являющееся простым числом, чтобы они не могли его выбрать.

В данный момент я делаю проверку после отправки формы и выдачи сообщения об ошибке.Чтобы сделать его более удобным, я бы хотел ограничить число, поскольку пользователь выбирает их, прокручивая счетчик.

Код счетчика:

<div class="row itemlabel">
    <div class="col-lg-7">
        Blocks [ Size : 10 pixels X 10 pixels : Min 1 - Max 49 : No Prime Numbers Please]
    </div>
    <div class="col-lg-2">
        <input class="form-control" type="number" value="1" min="1" max="49" id="blockCount"/>
    </div>
    <div class="col-lg-3"></div>
</div>

Я нашел ответыдля ограничения опций флажка и т. д., но не счетчик.Не уверен, если это возможно.

1 Ответ

0 голосов
/ 24 ноября 2018

ОК

Итак, я создал тестовый код на основе приведенных предложений.Я обнаружил, что событие «oninput» было правильным типом события.

Код выглядит следующим образом:

<!DOCTYPE html>
<html>
<body>

<p>Blocks [ Size : 10 pixels X 10 pixels : Min 1 - Max 49 : No Prime Numbers Please]</p>


<input type="number" value="1" min="1" max="49" id="blockcount" oninput="primenotest()"/>
<p id="demo"></p>

<script>
function primenotest() {
    var x = document.getElementById("blockcount").value;

    /** check if X is a prime number between 1 and 49 **/

    if(x == 3 || x == 5 || x == 7 || x == 11 || x == 13 || x == 17 || x == 19 || x == 23 || x == 29 || x == 31 || x == 37 || x == 41 || x == 43 || x == 47)
    {
        document.getElementById("demo").innerHTML = "That's PRIME NUMBER. Choose Again!";
    }
    else
    {
        document.getElementById("demo").innerHTML = "";
    }


}
</script>

</body>
</html>

Это прекрасно работает, и я включу его в свой основной код.

Спасибо!

...