Modification dynamique de L'attribut" placeholder " des éléments d'entrée HTML5 à L'aide de Javascript
J'essaie de mettre à jour dynamiquement L'attribut HTML5 placeholder
d'un champ de texte en utilisant jQuery.
$("textarea").attr("placeholder", "New placeholder text");
De Firebug, je peux observer que l'attribut placeholder
change en effet. Mais dans l'élément rendu textarea
, il reste le même. Toutes les suggestions?
6 réponses
Si vous utilisez Firebug, je peux supposer que vous utilisez Firefox, et Firefox ne prend pas encore en charge l'attribut placeholder
dans les champs de saisie lui-même.
Détection de fonction D'espace réservé
Je viens d'essayer sur Chrome pour Mac et il prend en charge le texte de l'espace réservé sur textareas (et les changements via javascript)
2015 Update: parfois, je gagne en réputation pour cette réponse, donc je tiens à préciser que cela a été accepté comme correct car à L'époque Firefox 3.6 ne supportait pas l'espace réservé attribut. La version 4 a ensuite ajouté le support ("correction du problème" n'aurait pas été juste) de sorte que le code D'OP fonctionne comme prévu depuis lors.
Essayez ceci :
$('#inputTextID').attr("placeholder","placeholder text");
Je pense que vous devez le faire:
$("textarea").val('');
$("textarea").attr("placeholder", "New placeholder text");
<label for="myname">Name *</label>
<input type="text" name="myname" id="myname" title="Please enter your name"
pattern="[A-Za-z ]+, [A-Za-z ]+"
autofocus required placeholder="Last, First" />
Ensuite, vous voulez sélectionner l'espace réservé et remplacer ce texte par le new text that you want to enter
.
$("input[placeholder]").attr("placeholder", "This is new text");
Cela remplacera le texte de Last, First
à This is new text
.
Exemple de travail d'espace réservé dynamique utilisant Javascript et Jquery http://jsfiddle.net/ogk2L14n/1/
<input type="text" id="textbox">
<select id="selection" onchange="changeplh()">
<option>one</option>
<option>two</option>
<option>three</option>
</select>
function changeplh(){
debugger;
var sel = document.getElementById("selection");
var textbx = document.getElementById("textbox");
var indexe = sel.selectedIndex;
if(indexe == 0) {
$("#textbox").attr("placeholder", "age");
}
if(indexe == 1) {
$("#textbox").attr("placeholder", "name");
}
}
HTML:
<input type="text" placeholder="entername" id="fname"/>
JS:
$("#fname").attr("placeholder", "New placeholder text");