J'ai un <ul>
avec des nombres inconnus d'<li>
éléments à l'intérieur. Tous les éléments <li>
peuvent avoir ou non un élément $('p.have')
avec du texte. Je veux recevoir un texte de tous les éléments $('p.have')
et s'il n'y a pas $('p.have')
nous avons reçu une chaîne vide. exemple possible de <ul>
:TypeError non saisi: textLocation [p] .find n'est pas une fonction
<ul>
<li>
<p class="have">Text from first</p>
</li>
<li>
<p class="have">Text from second</p>
</li>
<li>
<p class="notHave">Not our text</p>
</li>
<li>
<p class="have">Text from fourth</p>
</li>
<li>
<p class="have">Text from five</p>
</li>
</ul>
Resul: 'Texte de premier', 'Texte de seconde', '', 'Texte de quatrième'
J'utilise script suivant:
var textLocation = $('ul li');
var mytext = [];
function findText(){
for (var p = 0 ; p < textLocation.length; p++) {
if(textLocation[p].find('p.have')) {
mytext.push($(this).text());
} else { mytext.push(' ');}
}
}
findText();
console.log(mytext);
mais je reçois l'erreur suivante
Quelqu'un peut-il me aider à résoudre le problème
quelle est la valeur de 'textLocation'? Comment avez-vous initialisé cette valeur? – gurvinder372
Bonjour, je vous remercie pour votre question. J'ai édité ma question s'il vous plaît jeter un oeil – AllexF