Maison > interface Web > Questions et réponses frontales > jquery obtient la valeur de l'élément enfant

jquery obtient la valeur de l'élément enfant

WBOY
Libérer: 2023-05-23 13:23:37
original
1174 Les gens l'ont consulté

Dans le développement front-end, nous avons souvent besoin d'obtenir la valeur des éléments enfants d'un élément. S'il y a peu d'éléments enfants, il n'est pas trop difficile de les obtenir manuellement un par un, mais s'il y a beaucoup d'éléments enfants ou si leur nombre est incertain, alors cette méthode n'est sans doute pas réalisable. À l’heure actuelle, avec l’aide de la puissante fonction de jQuery, nous pouvons facilement obtenir la valeur du sous-élément sous un élément.

Tout d’abord, regardons un exemple. Supposons que nous ayons le code HTML suivant :

<div id="container">
  <div class="child">第1个子元素</div>
  <div class="child">第2个子元素</div>
  <div class="child">第3个子元素</div>
  <div class="child">第4个子元素</div>
  <div class="child">第5个子元素</div>
</div>
Copier après la connexion

Maintenant, nous devons obtenir la valeur du 3ème élément enfant. Selon la syntaxe de jQuery, nous pouvons utiliser le code suivant :

var thirdChild = $('#container .child:eq(2)').text();
alert(thirdChild);
Copier après la connexion

Ici, nous utilisons la syntaxe de sélection de jQuery, c'est-à-dire que nous sélectionnons d'abord l'élément conteneur via $('#container'), puis utilisons < code> .child spécifie le nom de classe de l'élément enfant à obtenir, et utilise enfin :eq(2) pour spécifier que le troisième élément enfant doit être obtenu. Notez que l'index ici est calculé à partir de 0, utilisez donc 2 au lieu de 3. $('#container') 选中容器元素,再使用 .child 指定了要获取子元素的类名,最后使用 :eq(2) 指定要获取的是第3个子元素。注意,这里的索引是从0开始计算的,因此使用 2 而非 3

我们还可以使用一些其他的 jQuery 选择器语法,例如使用 :first 获取第一个子元素的值,使用 :last 获取最后一个子元素的值,使用 :odd:even 获取所有奇数和偶数位的子元素的值等。

var firstChild = $('#container .child:first').text();
var lastChild = $('#container .child:last').text();
var oddChildren = $('#container .child:odd').text();
var evenChildren = $('#container .child:even').text();
alert(firstChild);
alert(lastChild);
alert(oddChildren);
alert(evenChildren);
Copier après la connexion

除了使用选择器语法,我们还可以使用 jQuery 的 children() 函数获取某个元素的所有子元素,然后通过 eq() 索引指定要获取的是哪一个子元素的值。例如:

var thirdChild = $('#container').children('.child').eq(2).text();
alert(thirdChild);
Copier après la connexion

这里的代码与第一个示例非常相似,唯一的区别是使用了 children() 函数和 eq() 索引。

需要注意的是,在实际开发过程中,有可能会出现子元素数量不确定的情况,例如通过 Ajax 动态加载的内容。这时,我们可以先使用 children() 函数获取所有的子元素,然后使用 .length 属性获取子元素的数量,进而动态生成索引进行子元素值的获取。例如:

var numChildren = $('#container').children('.child').length; // 获取子元素的数量
for(var i=0; i<numChildren; i++) {
  var childText = $('#container').children('.child').eq(i).text(); // 动态生成索引获取每个子元素的值
  alert('第' + (i+1) + '个子元素的值是:' + childText);
}
Copier après la connexion

上述代码中,我们利用了 for 循环以及字符串拼接功能,批量获取所有子元素的值并逐个显示出来。

最后,需要注意的是,在 jQuery 中,.eq():eq() 具有相同的功能,是根据索引获取元素集合中的指定元素的函数和选择器的语法。但在某些情况下,由于选择器需要简化写法,使用 :eq()

Nous pouvons également utiliser une autre syntaxe de sélecteur jQuery, comme utiliser :first pour obtenir la valeur du premier élément enfant et utiliser :last pour obtenir la valeur de le dernier élément enfant. Value, utilisez :odd et :even pour obtenir les valeurs de tous les éléments enfants impairs et pairs, etc. 🎜rrreee🎜En plus d'utiliser la syntaxe du sélecteur, nous pouvons également utiliser la fonction children() de jQuery pour obtenir tous les éléments enfants d'un élément, puis spécifier les éléments souhaités via eq() index Quelle valeur de sous-élément est obtenue. Par exemple : 🎜rrreee🎜Le code ici est très similaire au premier exemple, la seule différence est l'utilisation de la fonction children() et de l'index eq(). 🎜🎜Il convient de noter que pendant le processus de développement lui-même, il peut y avoir des situations où le nombre de sous-éléments est incertain, comme le contenu chargé dynamiquement via Ajax. À ce stade, nous pouvons d'abord utiliser la fonction children() pour obtenir tous les éléments enfants, puis utiliser l'attribut .length pour obtenir le nombre d'éléments enfants, et puis générez dynamiquement un index pour vérifier la valeur de l'élément enfant de l'acquisition. Par exemple : 🎜rrreee🎜Dans le code ci-dessus, nous utilisons la fonction d'épissage de boucle et de chaîne for pour obtenir les valeurs de tous les sous-éléments par lots et les afficher un par un. 🎜🎜Enfin, il convient de noter que dans jQuery, .eq() et :eq() ont la même fonction, qui est d'obtenir l'élément spécifié dans la collection basé sur les fonctions d’élément et la syntaxe du sélecteur. Mais dans certains cas, parce que le sélecteur doit être simplifié, l'utilisation de la syntaxe :eq() peut être plus facile à comprendre et à écrire. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal