Как не отправить форму, если проверка является ложью

Вот еще один способ сделать это

SELECT * FROM
#LAST_NM 
WHERE
COALESCE(LAST_NM_1, LAST_NM_2, LAST_NM_3, LAST_NM_4) = COALESCE(LAST_NM_2, LAST_NM_3, LAST_NM_4,LAST_NM_1)
AND COALESCE(LAST_NM_2, LAST_NM_3, LAST_NM_4,LAST_NM_1) = COALESCE(LAST_NM_3, LAST_NM_4,LAST_NM_1,LAST_NM_2)
AND COALESCE(LAST_NM_3, LAST_NM_4,LAST_NM_1,LAST_NM_2) = COALESCE(LAST_NM_4,LAST_NM_1,LAST_NM_2,LAST_NM_3)
AND (LAST_NM_ORIGINAL <> COALESCE(LAST_NM_1, LAST_NM_2, LAST_NM_3, LAST_NM_4))
5
задан Spoike 20 March 2009 в 09:40
поделиться

5 ответов

Если функция возвратит false, то форма не будет отправлена.

$('#form').submit(function(){
    return  validateForm1() 
            && validateForm(document.forms['dpart2']) 
            && validateForm(document.forms['dpart3']);                                         
              }
});
6
ответ дан 18 December 2019 в 06:52
поделиться
$('#form').submit(function(){
    return (validateForm1() &&
            validateForm(document.forms['dpart2']) &&
            validateForm(document.forms['dpart3']))
});

В основном Вы возвращаете false в конечном счете функция-обработчик.

7
ответ дан 18 December 2019 в 06:52
поделиться

Хорошо, некоторые из других решений будут иметь ленивый сбой... Вы, вероятно, хотите, чтобы вся Ваша проверка работала, так, чтобы все ошибки были отображены. Предположение - то, что Ваши методы проверки возвратят false, если они перестанут работать.

$("#myform").submit(function() {

    var ret = true;
    ret = validateForm1() && ret;
    ret = validateForm(document.forms['dpart2']) && ret
    ret = validateForm(document.forms['dpart3'])) && ret
    return ret;

});

Таким образом, все Ваши блоки проверки допустимости назовут, но булево значение для любого отказа, приведет к сбою.

4
ответ дан 18 December 2019 в 06:52
поделиться

Если validateForm (...) и validateForm1 () возвращаются, булевская переменная (верный означает, что никакая ошибка проверки не произошла), то Вы пытаетесь сделать это:

$('#form').submit(function(){
    if (!validateForm1() || !validateForm(document.forms['dpart2']) || !validateForm(document.forms['dpart3'])) {
        return false;
    }
});
3
ответ дан 18 December 2019 в 06:52
поделиться

Мысль, которая подходит автоматически: Даже если Вы реализовали полную клиентскую проверку быть готовыми получить какие-либо данные неверного запроса по серверу, который можно возможно вообразить.

Клиентская проверка никогда не сохраняет Вас от проверки серверной стороны. Это - просто премия в удобстве использования.

3
ответ дан 18 December 2019 в 06:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: