60 votes

Supprimer la valeur par défaut d'un texte saisi lors d'un clic

J'ai un texte d'entrée :

<input name="Email" type="text" id="Email" value="email@abc.example" />

Je veux mettre une valeur par défaut comme "Quelle est votre question de programmation ? soyez précis" dans Stack Overflow, et quand l'utilisateur clique dessus la valeur par défaut disparaît.

2voto

c-h-a-r-a-n Points 1

Nous pouvons le faire sans utiliser js de la manière suivante en utilisant l'attribut "placeholder" de HTML5 ( le texte par défaut disparaît lorsque l'utilisateur commence à taper, mais pas lorsqu'il clique)

<input type="email" id="email" placeholder="xyz@abc.example">

voir ceci : http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_placeholder

2voto

072et Points 345

Il suffit d'utiliser un placeholder dans votre entrée au lieu de value

0 votes

Je ne savais pas que cet attribut existait et il fonctionne très bien, merci !

1voto

kkk Points 1653

<input name="Email" type="text" id="Email" placeholder="enter your question" />

L'attribut placeholder spécifie une courte indication décrivant la valeur attendue d'un champ de saisie (par exemple, un exemple de valeur ou une brève description du format attendu).

La brève indication est affichée dans le champ de saisie avant que l'utilisateur ne saisisse une valeur.

Note : L'attribut placeholder fonctionne avec les types d'entrée suivants : texte, recherche, url, tel, email et mot de passe.

Je pense que cela aidera.

0 votes

Vous mettez en valeur l'utilisation des espaces réservés, mais une brève description du sujet aiderait beaucoup les autres.

1 votes

J'ai édité ma réponse et j'espère que cette description détaillée de l'espace réservé aidera les gens.

0voto

ELO Points 14

Voici un javascript très simple. Il fonctionne très bien pour moi :

// JavaScript:

function sFocus (field) {
    if(field.value == 'Enter your search') {
        field.value = '';
    }
    field.className = "darkinput";
}

function sBlur (field) {
    if (field.value == '') {
        field.value = 'Enter your search';
        field.className = "lightinput";
    }
    else {
        field.className = "darkinput";
    }
}
// HTML
<form>
  <label class="screen-reader-text" for="s">Search for</label>
  <input
    type="text"
    class="lightinput"
    onfocus="sFocus(this)" 
    onblur="sBlur(this)"
    value="Enter your search" name="s" id="s"
  />
</form>

0 votes

Vous devriez aussi montrer comment le brancher. Les fonctions ne font rien par elles-mêmes.

0 votes

<form role="search" method="get" id="searchform" action="" > <div><label class="screen-reader-text" for="s">Search for</label> <input type="text" class="lightinput" onfocus="sFocus(this)" onblur="sBlur(this)" value="Enter your search" name="s" id="s" /> <input type="submit" id="searchsubmit" value="" /> </div> </form>

0voto

KingRider Points 17

Pourquoi enlever de la valeur ? c'est utile, mais pourquoi ne pas essayer le CSS ?

input[submit] {
   font-size: 0 !important;
}

La valeur est importante pour vérifier et valider votre PHP

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X