J'essaie d'utiliser un caractère générique pour obtenir l'identifiant de tous les éléments dont l'identifiant commence par "jander". J'ai essayé $('#jander*')
, $('#jander%')
mais cela ne fonctionne pas ..
Je sais que je peux utiliser des classes d'éléments pour le résoudre, mais il est également possible d'utiliser des caractères génériques?
<script type="text/javascript">
var prueba = [];
$('#jander').each(function () {
prueba.Push($(this).attr('id'));
});
alert(prueba);
});
</script>
<div id="jander1"></div>
<div id="jander2"></div>
Pour obtenir tous les éléments commençant par "jander", vous devez utiliser:
$("[id^=jander]")
Pour obtenir ceux qui se terminent par "jander"
$("[id$=jander]")
Voir aussi le documentation JQuery
Puisque le titre suggère un caractère générique, vous pouvez également utiliser ceci:
$(document).ready(function(){
console.log($('[id*=ander]'));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="jander1"></div>
<div id="jander2"></div>
Ceci sélectionnera la chaîne donnée n'importe où dans le id
.
Essayez le jQuery commence avec
sélecteur, '^ =', par exemple
[id^="jander"]
Je dois demander cependant, pourquoi ne voulez-vous pas faire cela en utilisant des classes?
pour les cours, vous pouvez utiliser:
div[class^="jander"]
Pour obtenir l'id de la correspondance avec le caractère générique:
$('[id^=pick_]').click(
function(event) {
// Do something with the id # here:
alert('Picked: '+ event.target.id.slice(5));
}
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="pick_1">moo1</div>
<div id="pick_2">moo2</div>
<div id="pick_3">moo3</div>
Lorsque vous avez une chaîne d’identification plus complexe, les guillemets doubles sont obligatoires.
Par exemple, si vous avez un identifiant comme celui-ci: id="2.2"
, la manière correcte d'y accéder est la suivante: $('input[id="2.2"]')
Autant que possible, utilisez les guillemets doubles, pour des raisons de sécurité.