0
votes

Comment permettre à tous les types de caractères dans une entrée

Je tente de limiter ce que l'utilisateur peut entrer dans chaque entrée ... Tout fonctionne comme prévu, à l'exception de la fonction Rien ():

Je souhaite que cette fonction autorise Tous les caractères entré dans les entrées oùdowndown = "rien ();". Pour une raison quelconque, celles de la fonction Rien () suivent la même mise en page que le même nom d'utilisateur (qui est uniquement du texte et des chiffres).

Aidez-le s'il sera très apprécié. Merci pour votre temps .. xxx


0 commentaires

3 Réponses :


0
votes

Tout d'abord, votre motif pour rien n'est faux (je vais lancer une erreur),

Vous avez dit qu'il acceptera tout document, alors retirez simplement l'événement de la clé sans avoir besoin de la fonction de rien ... P>

p>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div style="width:50%; margin:auto;">
    <h1>Register</h1>
    <p>Please fill in this form to create an account.</p>
    <hr>
    <label for="username"><b>Username:</b></label>
    <input type="text" placeholder="Username" name="username" pattern="[^-,]+" onKeyDown="ValidateName();">

    <label style="width:50%" for="fname"><b>First Name:</b></label>
    <input type="text" placeholder="Enter First Name" pattern="[^-,]+" name="fname" onKeyDown="ValidateFname();">

    <label for="lname"><b>Last Name:</b></label>
    <input type="text" placeholder="Ender Last Name" pattern="[^-,]+" name="lname" onKeyDown="ValidateLname();"><br><br>

    <label for="dob"><b>Date of Birth</b></label>
    <input type="date" placeholder="" name="dob"> <br><br>

    <label for="ingame"><b>In Game Name:</b></label>
    <input type="text" placeholder="Enter In Game Name" name="ingame" onKeyDown="ValidateIGN();">

    <label for="email"><b>Email</b></label>
    <input type="text" placeholder="Enter Email" name="email" pattern="[^-,]+" onKeyDown="nothing()">

    <label for="pw"><b>Password</b></label>
    <input type="password" placeholder="Enter Password" name="pw" pattern="[^-,]+">

    <label for="psw-repeat"><b>Confirm Password</b></label>
    <input type="password" placeholder="Repeat Password" name="confpw" pattern="[^-,]+">
    <button onclick="" name="register" type="submit" class="register">Register</button>
  </div>


2 commentaires

La raison pour laquelle j'ai ajouté était parce que cela ne fonctionne pas. ive essayé beaucoup de choses différentes mais ils continuent à agir comme la fonction de nom de validation


Il y a quelque chose qui ne va pas dans votre code, sans que lakeyprimé ne fonctionne correctement !!!



0
votes
  1. Supprimer tout OnKeydown = "FunctionNameXXX ();" code> à partir d'une balise d'entrée. LI>

    Le problème est que vous enregistrez l'événement à chaque fois lorsque la valeur d'entrée change de valeur. P>

    Je viens de modifier votre code et cela a bien fonctionné. P>

    JS Code strong> Supprimer toute la méthode en ligne HTML et ajoutez deux gestionnaires un pour le nom d'utilisateur et deuxième pour les autres noms, rien à voir avec le mot de passe et le courrier électronique si vous n'êtes pas disposé à les valider. P>

     <form action="registration.php" method="post" name = "register" >
      <div style="width:50%; margin:auto;">
        <h1>Register</h1>
        <p>Please fill in this form to create an account.</p>
        <hr>
    
    
        <label for="username"><b>Username:</b></label>
        <input type="text" placeholder="Username" name="username" pattern="[^-,]+"   >
    
        <label style="width:50%" for="fname"><b>First Name:</b></label>
        <input type="text" placeholder="Enter First Name"   pattern="[^-,]+" name="fname"  class="name" >
    
        <label for="lname"><b>Last Name:</b></label>
        <input type="text" placeholder="Ender Last Name" pattern="[^-,]+" name="lname"  class="name"><br><br>
    
        <label for="dob"><b>Date of Birth</b></label>
        <input type="date" placeholder="" name="dob"> <br><br>
    
        <label for="ingame"><b>In Game Name:</b></label>
        <input type="text" placeholder="Enter In Game Name" name="ingame" class="name">
    
        <label for="email"><b>Email</b></label>
        <input type="text" placeholder="Enter Email" name="email" pattern="[^-,]+"  >
    
        <label for="pw"><b>Password</b></label>
        <input type="password" placeholder="Enter Password" name="pw" pattern="[^-,]+" >
    
        <label for="psw-repeat"><b>Confirm Password</b></label>
        <input type="password" placeholder="Repeat Password" name="confpw" pattern="[^-,]+"  >
        <button onclick="" name="register" type="submit" class="register">Register</button>
      </div>
    
      <div <div style="width:50%; margin;auto;">
        <p>Already have an account? <a href="#">Sign in (unfinished)</a>.</p>
    </form>
    


0 commentaires

0
votes

Mauvaises parties:
  • Vous ne pouvez pas utiliser ceci code> lorsque vous utilisez les auditeurs d'événements HTML en ligne. LI>
  • $ («entrée») signifie chaque entrée, qui liera les mêmes événements à chaque entrée, ce qui provoque une duplication chaque fois que vous entrez du texte. LI> ul>

    Que devriez-vous faire: h2>
    1. Essayez de ne pas utiliser les auditeurs d'événements en ligne.

      Cela ressemble plus à un conseil, mais cela rend votre code plus difficile à lire et plus difficile à gérer. Essayez de lier les événements de JS. P> LI>

    2. à nouveau, $ (entrée ') signifie littéralement toutes les entrées dans le document, ce qui vous empêchera de faire des filtres distincts. Vous devez sélectionner des éléments avec des sélecteurs plus spécifiques, tels que $ ("INPUT [NOM = 'Nom d'utilisateur']"). Vous pouvez voir différents sélecteurs d'ici: https://www.w3schools.com/cssref/csss_selectors. ASP P> LI> ol>

      Ce sera votre code: p>

      p>

          <html>
          <head>
              <title>Registration</title>
              <link href="style.css" rel="stylesheet" type="text/css">
              <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
          </head>
      
          <body>
      
              <form action="registration.php" method="post" name = "register" >
                <div style="width:50%; margin:auto;">
                  <h1>Register</h1>
                  <p>Please fill in this form to create an account.</p>
                  <hr>
                  <label for="username"><b>Username:</b></label>
                  <input type="text" placeholder="Username" name="username">
      
                  <label style="width:50%" for="fname"><b>First Name:</b></label>
                  <input type="text" placeholder="Enter First Name" name="fname">
      
                  <label for="lname"><b>Last Name:</b></label>
                  <input type="text" placeholder="Ender Last Name" name="lname"><br><br>
      
                  <label for="dob"><b>Date of Birth</b></label>
                  <input type="date" placeholder="" name="dob"> <br><br>
      
                  <label for="ingame"><b>In Game Name:</b></label>
                  <input type="text" placeholder="Enter In Game Name" name="ingame">
      
                  <label for="email"><b>Email</b></label>
                  <input type="text" placeholder="Enter Email" name="email">
      
                  <label for="pw"><b>Password</b></label>
                  <input type="password" placeholder="Enter Password" name="pw">
      
                  <label for="psw-repeat"><b>Confirm Password</b></label>
                  <input type="password" placeholder="Repeat Password" name="confpw">
                  <button onclick="" name="register" type="submit" class="register">Register</button>
                </div>
      
                <div style="width:50%; margin;auto;">
                  <p>Already have an account? <a href="#">Sign in (unfinished)</a>.</p>
                </div>
              </form>
      
          </body>
          </html>


0 commentaires