Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.05.2021, 15:48
Интересующийся
Отправить личное сообщение для Artemyi Посмотреть профиль Найти все сообщения от Artemyi
 
Регистрация: 23.09.2019
Сообщений: 20

Проверка обязательных полей в форме
Добрый день.
Есть такая форма:
<form>
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
      </div>
      <div class="modal-body"> 
            <input type="text" class="form-control" id="email" placeholder="Email" required="required" />
            <input type="text" class="form-control" id="phone" placeholder="Телефон" required="required" />
            <textarea class="form-control" id="text" cols="30" rows="10" placeholder="Сообщение"></textarea>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Отмена</button>
        <button type="button" class="btn btn-primary" id="btn-send">Отправить письмо</button>
      </div>
    </form>


Такой скрипт:
$(document).ready(function(){   
    $('#btn-send').click(function () {
        var email = $('#email').val();
        var phone = $('#phone').val();
        var text = $('#text').val();
        $.ajax({
            type: "POST", //метод передачи данных
            url: 'page.php', //обработчик php
            data: {email: email, phone:phone, text:text},//передаваемые данные
            success: function(data) { //получение результата
                var old = $('.modal-header').html();//получаем содержимое div
                $('.modal-header').html(old + data); //добавляем сообщение об отправке
                }
            });
    });
});


И обработчик:
//получаем данные пришедшие post
$email=$_POST[email];
$phone=$_POST[phone];
$text=$_POST[text];
$mess='E-mail: '.$email.'; <br>Номер телефона: '.$phone.' Текст сообщения: '.$text;//сообщение
$headers  = "Content-type: text/html; charset=utf-8 \r\n";//кодировка 
$headers .= "From: admin@admin.ru";//откуда отправлено письмо
//отправляем email админу
if(mail('admin@admin.ru', 'Форма обратной связи', $mess, $headers)){
echo '<div class="alert alert-success alert-dismissible" role="alert">
    <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
    Сообщение успешно отправлено!
    </div>';
}else{
    echo '<div class="alert alert-danger alert-dismissible" role="alert">
    <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
    <strong>Ошибка !</strong> Сообщение не отправлено!
    </div>';
}


Письма приходят. Но не работает required в полях, даже если ни одно поле не заполнено, письмо отправляется.
Подскажите, как в этой форме добавить проверку на заполненность нужный полей?
Ответить с цитированием
  #2 (permalink)  
Старый 18.05.2021, 16:38
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от Artemyi
как в этой форме добавить проверку на заполненность нужный полей?
Как вариант, заменить это

Сообщение от Artemyi
<button type="button" class="btn btn-primary" id="btn-send">Отправить письмо</button>
На это

<button type="submit" class="btn btn-primary" id="btn-send">Отправить письмо</button>
Ответить с цитированием
  #3 (permalink)  
Старый 19.05.2021, 09:00
Интересующийся
Отправить личное сообщение для Artemyi Посмотреть профиль Найти все сообщения от Artemyi
 
Регистрация: 23.09.2019
Сообщений: 20

Сообщение от ksa Посмотреть сообщение
Как вариант, заменить это

На это

<button type="submit" class="btn btn-primary" id="btn-send">Отправить письмо</button>
Заменил. Теперь вылезает требование заполнить поле, но сообщение все равно отправляется.
Ответить с цитированием
  #4 (permalink)  
Старый 19.05.2021, 09:49
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от Artemyi
сообщение все равно отправляется
Перевесить отправку с кнопки на форму...
Ответить с цитированием
  #5 (permalink)  
Старый 19.05.2021, 11:29
Интересующийся
Отправить личное сообщение для Artemyi Посмотреть профиль Найти все сообщения от Artemyi
 
Регистрация: 23.09.2019
Сообщений: 20

Сообщение от ksa Посмотреть сообщение
Перевесить отправку с кнопки на форму...
Буду благодарен, если подскажете как это сделать
Ответить с цитированием
  #6 (permalink)  
Старый 19.05.2021, 11:32
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от Artemyi
как это сделать
Подобная информация есть в букваре...
https://learn.javascript.ru/forms-submit
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как проверить заполненность полей в пошаговой форме? adash Элементы интерфейса 29 31.08.2018 14:15
Проверка полей на форме alex_89 Общие вопросы Javascript 2 13.05.2011 14:12
Проверка полей отправляемой формы. denisOgr jQuery 6 18.10.2010 19:40
Проблема с проверкой полей в форме Eth Общие вопросы Javascript 7 19.08.2010 17:41
проверка полей формы!!!! DENAT Общие вопросы Javascript 0 05.06.2008 22:14