J'utilise un plugin d'espace réservé jQuery (https://github.com/danielstocks/jQuery-Placeholder). J'ai besoin de changer le texte de l'espace réservé avec le changement dans le menu déroulant. Mais cela ne change pas. Voici le code:
$(function () {
$('input[placeholder], textarea[placeholder]').placeholder();
$('#serMemdd').change(function () {
var k = $(this).val();
if (k == 1) {
$("#serMemtb").attr("placeholder", "Type a name (Lastname, Firstname)").placeholder();
}
else if (k == 2) {
$("#serMemtb").attr("placeholder", "Type an ID").placeholder();
}
else if (k == 3) {
$("#serMemtb").attr("placeholder", "Type a Location").placeholder();
}
});
});
Mon Html:
<div class="filterbox">
<select name="ddselect" id="serMemdd">
<option value="1" selected="selected">Search by Name</option>
<option value="2">Search by ID</option>
<option value="3">Search by Location</option>
</select>
<input id="serMemtb" type="text" style="width: 490px" placeholder="Type a name (Lastname, Firstname)" />
<input id="seMemBut" type="button" value="Search" />
</div>
Quelqu'un peut-il comprendre cela?
jquery
jquery-plugins
Krishh
la source
la source
Réponses:
Copiez et collez ce code dans votre fichier js, cela changera tout le texte d'espace réservé de l'ensemble du site.
la source
if
déclaration-, car vous souhaitez généralement définir l'espace réservé, que l'élément d'entrée ait ou non une valeur. Sinon, aucun espace réservé n'est affiché si l'utilisateur vide l'élément d'entrée.Vous pouvez utiliser le code suivant pour mettre à jour un espace réservé par identifiant:
la source
vous pouvez simplement utiliser
où, si variable est une chaîne, vous pouvez utiliser comme ci-dessus, si elle est variable, remplacez-la par le nom comme "variable" sans guillemets.
par exemple:
$("#youtextboxid").attr("placeholder", variable);
cela fonctionnera.la source
Le plugin n'a pas l'air très robuste. Si vous appelez à
.placeholder()
nouveau, il crée une nouvellePlaceholder
instance tandis que les événements sont toujours liés à l'ancienne.En regardant le code, on dirait que vous pourriez faire:
ÉDITER
placeholder
est un attribut HTML5 , devinez qui ne le prend pas en charge?Votre plugin ne semble pas vraiment vous aider à surmonter le fait que IE ne le supporte pas, donc pendant que ma solution fonctionne, votre plugin ne le fait pas. Pourquoi n'en trouvez-vous pas un qui le fait.
la source
$(this).val()
est une chaîne. UtilisezparseInt($(this).val(), 10)
ou vérifiez «1». Le dix est pour désigner la base 10.Ou
Autres plugins
ori a attiré mon attention sur le fait que le plugin que vous utilisez ne résout pas l'échec HTML d'IE.
Essayez quelque chose comme ceci: http://archive.plugins.jquery.com/project/input-placeholder
la source
$('#serMemdd').change(function () {
exemple pratique d'espace réservé dynamique utilisant Javascript et Jquery http://jsfiddle.net/ogk2L14n/1/
la source
modifier le texte de l'espace réservé à l'aide de jquery
essaye ça
la source
Déplacer votre première ligne vers le bas le fait pour moi: http://jsfiddle.net/tcloninger/SEmNX/
la source
Si l'entrée se trouve à l'intérieur du div, vous pouvez essayer ceci:
la source
essaye ça
la source
cela a fonctionné pour moi:
mais maintenant ça ne marche pas:
la source
la source
la source