je la pièce de code suivante jQuery:Insérer une valeur par défaut si texte d'entrée est supprimé
$(".SearchForm input:text").each(function(){
/* Sets the current value as the defaultvalue attribute */
if(allowedDefaults.indexOf($(this).val()) > 0 || $(this).val() == "")
{
$(this).attr("defaultvalue", $(this).val());
$(this).css("color","#9d9d9d");
/* Onfocus, if default value clear the field */
$(this).focus(function(){
if($(this).val() == $(this).attr("defaultvalue"))
{
$(this).val("");
$(this).css("color","#4c4c4c");
}
});
/* Onblur, if empty, insert defaultvalue */
$(this).blur(function(){
alert("ud");
if($(this).val() == "")
{
$(this).val($(this).attr("defaultvalue"));
$(this).css("color","#9d9d9d");
}else
{
$(this).removeClass("ignore");
}
});
}
});
J'utiliser ce code pour insérer du texte par défaut dans certains de mes champs d'entrée, quand rien d'autre est tapé Cela signifie que lorsqu'un utilisateur voit mon formulaire de recherche, les valeurs par défaut seront définies en tant qu'attribut dans le champ de saisie, et ce sera la valeur affichée. Lorsqu'un utilisateur clique à l'intérieur du champ de saisie, la valeur par défaut sera supprimée.
Lorsque l'utilisateur voit un champ d'entrée est d'abord ressemble à ceci:
<input type="text" value="" defaultvalue="From" />
Cela fonctionne très bien, mais j'ai un grand défi. Si un utilisateur a posté le formulaire et que quelque chose est entré dans l'un des champs, je ne peux pas afficher la valeur par défaut dans le champ, si l'utilisateur supprime le texte du champ de saisie. Cela se produit car la valeur du champ de texte contient toujours quelque chose, même lorsque l'utilisateur supprime le contenu. Donc, mon problème est comment montrer la valeur par défaut lorsque le formulaire est soumis, et l'utilisateur supprime alors le contenu tapé?
Lorsque le formulaire est soumis l'entrée ressemble à ceci, et continue à ressembler à ceci jusqu'à ce que le formulaire est soumis à nouveau:
<input type="text" value="someValue" defaultvalue="From" />
donc je dois montrer la valeur par défaut dans l'entrée sur le terrain juste après la l'utilisateur a supprimé le contenu dans le champ et a supprimé l'attention du champ.
Est-ce que tout le monde comprend mon problème? Sinon, demandez simplement, j'ai lutté avec celui-ci depuis quelques temps maintenant, donc toute aide sera grandement appréciée.
Merci à l'avance, Kim Andersen