Проверка с использованием javascript (начальный уровень) - PullRequest
0 голосов
/ 02 апреля 2020

Я пытаюсь проверить ввод даты из формы, используя 'indexOf', и я пробовал это, но не работает. Есть идеи как это исправить пожалуйста? Бит && показывает ошибку. Ясно, что это не то, что я должен написать. Незначительное исправление, я верю.

Ответы [ 2 ]

0 голосов
/ 02 апреля 2020

Также важно отметить в вашем коде.

yes = (document.wedding.date.value.indexOf("/") == 2 && 5)

Использование логического && оператора AND здесь неверно. Этот оператор всегда разделяет два разных логических выражения. Ваше второе выражение 5, которое всегда будет истинным. Итак, что означает ваше выражение в словах: if first index of slash is 2(true/false) AND 5(true), но оно должно быть if first index of slash is 2 AND if second index of slash is 5.

0 голосов
/ 02 апреля 2020

вместо indexOf вы можете использовать регулярное выражение следующим образом:

function validate(){
        yes = (document.wedding.date.value.match(/^\d{1,2}\/\d{1,2}\/\d{4}$/)

            if(!yes) 
            alert("Incorrect Date Format");
    }

Это регулярное выражение соответствует датам в форме XX / XX / YYYY, где XX может иметь длину 1 или 2 цифры, а YYYY всегда 4 цифры в длину.

...