Как поместить ошибки проверки формы в окно предупреждения? - PullRequest
0 голосов
/ 06 ноября 2019
<?php
echo '<p>Username</p>';
echo form_input('username', set_value('username', ''));
echo '<p>Password</p>';
echo form_input('password', set_value('password', ''));
echo '<p>Confirm Password</p>';
echo form_input('password2', ' ');
echo form_submit('submit', 'Create Account');
?>
<?php echo validation_errors('<div class="error"></div>'); ?>

Вот мой код, и он работает нормально, но ошибка отображается под формой. Я хочу, чтобы ошибки отображались во всплывающем окне с предупреждением.

Ответы [ 3 ]

0 голосов
/ 06 ноября 2019
$('#submit').click(function (e) {
  var username = $("input#username").val();
  var password = $("input#password").val();
  var confirmPassword = $("input#password2").val();
  if(username==""){
      alert('Username cannot be empty');
      return false;
  }
  if(password==""){
      alert('password cannot be empty');
      return false;
  }
  if(confirmPassword==""){
      alert('Confirm password cannot be empty');
      return false;
  }
  if(password != confirmPassword){
      alert("Confrim password doesn't match password");
      return false;
  }
  return true
}       
0 голосов
/ 06 ноября 2019

Попробуйте это

<?php
echo '<p>Username</p>';
echo form_input('username', set_value('username', ''));
echo form_error('username','<div class="alert alert-danger">','</div>');
echo '<p>Password</p>';
echo form_input('password', set_value('password', ''));
echo form_error('password','<div class="alert alert-danger">','</div>');
echo '<p>Confirm Password</p>';
echo form_input('password2', ' ');
echo form_error('password2','<div class="alert alert-danger">','</div>');
echo form_submit('submit', 'Create Account');
?>

и удалите

<?php echo validation_errors('<div class="error"></div>'); ?>

, и если вы хотите, чтобы ошибки возникали в каком-то сладком предупреждении или чем-то еще, просто попробуйте скрипт и отредактируйте его по необходимостиВаш тот же код до form_submit метод и удалить validation_errors метод

<script type="text/javascript">
    <?php if(form_error('username')){ ?>
        alert('<?php echo form_error('password'); ?>');
    <?php } ?>  
    <?php if(form_error('password')){ ?>
        alert('<?php echo form_error('password'); ?>');
    <?php } ?>  
    <?php if(form_error('password2')){ ?>
        alert('<?php echo form_error('password'); ?>');
    <?php } ?>  
</script>
0 голосов
/ 06 ноября 2019

Предполагая, что вы отправляете форму с использованием AJAX, если проверка не пройдена, вы можете предупредить сообщение вместо добавления его в '<div class="error"></div>' этого подразделения. Ваш код в js-скрипте может выглядеть следующим образом:

//Assuming your button ID is submit
$('#submit').click(function (e) {       
  var username = $("input#username").val();
  var password = $("input#password").val();
  if (username == None):
     alert("User name cant be none");
  else if (password == None):
      alert("Password cant be none");
  else:
      //Submit a form after validation is satisfied.
      $.ajax({.......});

});

Также есть несколько доступных библиотек проверки формы JS, вы можете использовать их. Вот подходящая ссылка для вашего требования. https://www.tutorialspoint.com/javascript/javascript_form_validations.htm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...