Показать сообщение отдельно
  #12 (permalink)  
Старый 01.02.2020, 09:06
Кандидат Javascript-наук
Отправить личное сообщение для Katy93 Посмотреть профиль Найти все сообщения от Katy93
 
Регистрация: 28.12.2018
Сообщений: 138

Спасибо, что объяснили. Я всё же решила всё таки воспользоваться только проверки с цифрами:
<!DOCTYPE html>
<html>
<head><title>Test</title>
<style type="text/css">
.err{
  border-bottom: 2px solid #F90A0A;
}
.ok{
  border-bottom: 2px solid #34F458;
}

</style>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script>
 $(function(e){
$("form").on("input", "table input", function() {
var error_message = "Только цифры";
var pattern = /^\d+$/;
var num = this.value.trim();
var ok = pattern.test(num);
$(this).removeClass("ok err");
if(num) {
$(this).addClass(ok ? "ok" : "err");
}
var index = $("form table input").index(this);
$("form table .error_form").eq(index).html(ok || !num ? "" : error_message);
})

   });
</script>
</head>
<body>
<form method="POST" action="form.php">

<table border="0">
  <tr>
    <td><input type="text" value="" name="mass[age][]"></td>
    <td><input type="text" value="" name="mass[exp][]"></td>
    <td><select id="gender1" name="driver[gender][]">
           <option label="-"></option>
           <option value="1">Мужской</option>
           <option value="0">Женский</option>
       </select></td>
  </tr>
  <tr>
    <td><span class="error_form" ></span></td>
    <td><span class="error_form" ></span></td>
    <td></td>
  </tr>

  <tr>
    <td><input type="text" value="" name="mass[age][]"></td>
    <td><input type="text" value="" name="mass[exp][]"></td>
    <td><select id="gender1" name="driver[gender][]">
           <option label="-"></option>
           <option value="1">Мужской</option>
           <option value="0">Женский</option>
       </select></td>
  </tr>
  <tr>
    <td><span class="error_form" ></span></td>
    <td><span class="error_form" ></span></td>
    <td></td>
  </tr>

  <tr>
    <td><input type="text" value="" name="mass[age][]"></td>
    <td><input type="text" value="" name="mass[exp][]"></td>
    <td><select id="gender1" name="driver[gender][]">
           <option label="-"></option>
           <option value="1">Мужской</option>
           <option value="0">Женский</option>
       </select></td>
  </tr>
  <tr>
    <td><span class="error_form" ></span></td>
    <td><span class="error_form" ></span></td>
    <td></td>
  </tr>
<br>
</table>
  <input type="submit" value="Отправить">
</form>
 </body>
 </html>

Изменила кое-что третье поле с выбором пола не обязательно сделала из него список.
Можно как нибудь при отправке формы сообщать пользователю какие поля он ещё не заполнил?

Например он создал несколько динамических полей и не заполнил их потом нажимает submit и ему выдаёт сообщение под каждым полем красным "Только цифры". И тут выбор у пользователя либо удалить лишнее либо заполнить их.
Ответить с цитированием