Supposons que j'utilise un plugin jQuery "espace réservé" qui lit l'attribut "espace réservé" des éléments d'entrée et le simule pour les navigateurs qui ne prennent pas encore en charge les espaces réservés. Mais je voudrais quand même que $ ("input"). Val() fonctionne correctement - c'est-à-dire que "" si le texte dans la zone de texte est le texte de l'espace réservé. Est-il possible de surcharger .val() juste pour ces entrées?Puis-je remplacer jQuery .val() uniquement pour certains éléments d'entrée?
7
A
Répondre
6
essayez ceci:
jQuery.fn.rVal=function() {
if(this[0]) {
var ele=$(this[0]);
if(ele.attr('placeholder')!=''&&ele.val()==ele.attr('placeholder')) {
return '';
} else {
return ele.val();
}
}
return undefined;
};
et il suffit d'utiliser $ ("# ele_id") rVal() pour récupérer les valeurs.. Ou si vous voulez remplacer la fonction val (et l'utiliser comme normal):
jQuery.fn.rVal=jQuery.fn.val;
jQuery.fn.val=function(value) {
if(value!=undefined) {
return this.rVal(value);
}
if(this[0]) {
var ele=$(this[0]);
if(ele.attr('placeholder')!=''&&ele.rVal()==ele.attr('placeholder')) {
return '';
} else {
return ele.rVal();
}
}
return undefined;
};
2
Vous pouvez remplacer la méthode val()
globalement, puis vérifier s'il s'agit d'une entrée normale.
0
Pourriez-vous éventuellement utiliser un plugin filigrane?
http://code.google.com/p/jquery-watermark/
Il est assez facile à utiliser, il suffit d'appeler $("input").watermark("Placeholder text")
et il se comportera de la manière que vous avez décrite
Questions connexes
- 1. Remplacer la fonction jQuery .val()?
- 2. Jquery - remplacer le texte dans Val()
- 3. jQuery slideDown sélectionnez certains éléments?
- 4. Javascript RegExp pour autoriser uniquement certains caractères à certains endroits
- 5. fonction jquery vider certains éléments sous une forme
- 6. jQuery Striping avec certains éléments cachés
- 7. jQuery: supprimer certains éléments du document HTML
- 8. jQuery ajouter la classe à certains éléments
- 9. Comment puis-je remplacer uniquement les éléments capturés d'une regex?
- 10. jQuery texbox .val() renvoie + signe pour l'espace
- 11. Comment utiliser les données $ .get pour remplacer certains éléments d'une page Web?
- 12. problème d'arrondi jQuery avec .val()
- 13. jquery val() ne fonctionne pas
- 14. Jquery différences de navigateur .val()
- 15. Obtenir des éléments enfants avec certains tag jQuery
- 16. L'utilisation de find() excluant certains éléments?
- 17. Configuration Firebug pour être activé uniquement pour certains sites Web
- 18. Javascript pour ajouter un attribut personnalisé à certains éléments
- 19. jQuery .val() pas mise à jour sur
- 20. jQuery val (val) ne fonctionne pas dans le dialogue modal (jQuery ui)
- 21. Comment cacher certains éléments sur une page en utilisant jQuery
- 22. JQuery UI Sortable - Limiter la limite à certains éléments
- 23. Jquery - appelez la fonction quand flou + clic sur certains éléments?
- 24. Scripts de boîte de dialogue jQuery pour l'entrée val
- 25. Besoin d'aide pour comprendre la fonction jQuery .val()
- 26. .val() ne définit pas de valeur pour select (jQuery)
- 27. Jquery .val() pour l'entrée ne fonctionne qu'une seule fois
- 28. jQuery filigrane et en utilisant .VAL()
- 29. XML :: Twig ignore certains éléments?
- 30. C# Regex Remplacer mais remplacer uniquement un sous-groupe numéroté
c'est le chemin à parcourir. – Ender
Mais que se passe-t-il si l'utilisateur tape réellement une valeur qui est la même que l'espace réservé? – RobG