Проблема проверки имени - страница не использует обновленные данные - PullRequest
0 голосов
/ 06 ноября 2019

Я сделал регистрационную форму. внутри него я добавил функцию jQuery, отвечающую за проверку имени пользователя (не слишком короткое и еще не использованное), и оно, кажется, работает должным образом, но страница не продолжает проверять, было ли изменено введенное пользователем имя пользователя, чтобы оно соответствовалоустановить стандарты. он только проверяет имя пользователя при загрузке страницы (он отображает «имя пользователя слишком короткое») и больше не проверяет.

<form class="register_form_container" action="register.php" method="post">
  <div class="inputs_box">
    <p class="input_register_title">Name</p><input type="text" name="nome" value="">
    <p class="input_register_title">Age</p><input type="text" name="eta" value="">
    <p class="input_register_title">City</p><input type="text" name="citta" value="">
    <p class="input_register_title">Country</p><input type="text" name="paese" value="">
    <p class="input_register_title">Mail</p><input type="text" name="mail" value="">
    <p class="input_register_title">Password</p><input type="text" name="password" value="">
    <p class="input_register_title">Psychonaut name</p><input id="username_input" style="font-size:2vw;" type="text" name="username" value="">
  <div id="feedback">
  </div>
  <div class="input_register_title">
    <input class="submit_register_btn" type="submit" name="registra_user" value="ENTER THE COMMUNITY">
  </div>
  </div>
</form>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<!-- <script type = "text/javascript" src = "js/jQuery.js"></script> -->
<script type = "text/javascript">

    // when the document is ready, run the jquery script
    $(document).ready(function(){
        $('#feedback').load('check.php').show();

        /* We use keyup so that everytime the user type in the keyboard, it'll check the database and get results however,
          you can change this to a button click which is I think, more advisable.
          Sometimes, your server response is slow but just for this demo, we'll use 'keyup' */
        $('#username_input').keyup(function(){

            $.post('check.php', { username: form.username.value },
                function(result){
                    $('#feedback').html(result).show();
                });

        });
    });
</script>

1 Ответ

1 голос
/ 06 ноября 2019

Вы должны увидеть ошибку в консоли инструментов разработчика. Я думаю, что ваша проблема в том, что form.username.value не существует. Попробуйте это:

        $('#username_input').keyup(function(){

            $.post('check.php', { username: $(this).val() },
                function(result){
                    $('#feedback').html(result).show();
                });

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