Comment utiliser des variables JavaScript comme paramètre dans un sélecteur jQuery?
<script type="text/javascript">
$(function(){
$("input").click(function(){
var x = $(this).attr("name");
$("input[id=x]").hide();
});
});
</script>
<input type="text" id="bx"/><input type="button" name="bx"/>
<input type="text" id="by"/><input type="button" name="by"/>
En gros, ce que je veux faire, c'est pouvoir cacher l'élément qui a un id
égal au nom de l'élément sur lequel on clique.
javascript
jquery
user225269
la source
la source
Comme vous utilisez un identifiant, cela fonctionnerait mieux
Je recommande vivement d'être plus précis dans votre approche pour masquer des éléments via des clics de bouton. J'opterais plutôt pour l'utilisation d'attributs de données. Par exemple
Ensuite, dans votre JavaScript
Vous pouvez désormais contrôler complètement l'élément que vous ciblez et ce qui lui arrive via le HTML. Par exemple, vous pouvez utiliser
data-target=".some-class"
etdata-method="fadeOut"
pour faire disparaître une collection d'éléments.la source
Fonctionne également avec ID:
quand, (parfois)
ne fonctionne pas, comme il se doit .
Vous pouvez même faire les deux:
la source
la source
$("#" + $(this).attr("name")).hide();
la source
Modèle de chaîne ES6
Voici un moyen simple si vous n'avez pas besoin du support IE / EDGE
ou
Il s'agit d'une fonctionnalité es6 appelée chaîne de modèle
Afficher l'extrait de code
Concaténation de chaînes
Si vous avez besoin du support IE / EDGE, utilisez
Afficher l'extrait de code
Sélecteur dans DOM comme attribut de données
C'est ma méthode préférée car cela vous permet de coder vraiment SEC
Afficher l'extrait de code
la source