Подтвердить что ты не робот

Действия HTML-формы и проблемы с их выпуском

Я хочу запустить проверку javascript для некоторых записей в текстовом поле.

Проблема, с которой я столкнулась, заключается в том, что моя форма имеет действие перехода на новую страницу на нашем сайте, а атрибут onsubmit никогда не запускает функцию javascript.

Есть ли лучшее решение или тот, который работает со следующим кодом: ПРИМЕЧАНИЕ: файл javascript написан правильно и работает, если вы переключите действие на checkRegistration().

Это просто проблема с запуском как action, так и javascript.

<form name="registerForm" action="validate.html" onsubmit="checkRegistration()" method="post">
    <!-- textboxes here -->
    <!-- and submit button -->
</form>
4b9b3361

Ответ 1

Вы должны прекратить отправку процедуры, возвратив false в onsubmit обратный вызов.

<script>
function checkRegistration(){
    if(!form_valid){
        alert('Given data is not correct');
        return false;
    }
    return true;
}
</script>
<form onsubmit="return checkRegistration()"...

UPDATE:

здесь у вас есть полностью рабочий пример, форма будет отправляться только при написании google на вкладке, иначе она вернет ошибку:

<script>
function checkRegistration(){
    var form_valid = (document.getElementById('some_input').value == 'google');
    if(!form_valid){
        alert('Given data is incorrect');
        return false;
    }
    return true;
}
</script>
<form onsubmit="return checkRegistration()" method="get" action="http://google.com">
    Write google to go to google..<br/>
    <input type="text" id="some_input" value=""/>
    <input type="submit" value="google it"/>
</form>

Ответ 2

Try

onsubmit="return checkRegistration()"