Jquery get élément contenant un élément enfant avec une valeur html spécifique

Je voudrais utiliser Jquery pour ajouter une classe "li" élément qui contient un "span" élément html/val égal à zéro.

Par Exemple si mon code ressemble à ceci:

<ul>
    <li><span>Item 1</span><span class="num">30</span></li>
    <li><span>Item 2</span><span class="num">0</span></li>
    <li><span>Item 3</span><span class="num">20</span></li>
</ul>

Je veux modifier suivantes:

<ul>
    <li><span>Item 1</span><span class="num">30</span></li>
    <li class="disabled"><span>Item 2</span><span class="num">0</span></li>
    <li><span>Item 3</span><span class="num">20</span></li>
</ul>

Dans le passé, j'ai utilisé ce code pour vérifier les éléments de valeurs d'attribut, mais jamais leur html/val-de faire quelque chose à cet effet...

$('li').has('span.num').addClass('disabled');

Mais dans ce cas, le résultat serait de:

<ul>
    <li class="disabled"><span>Item 1</span><span class="num">30</span></li>
    <li class="disabled"><span>Item 2</span><span class="num">0</span></li>
    <li class="disabled"><span>Item 3</span><span class="num">20</span></li>
</ul>

Qui n'est évidemment pas d'aller travailler... Merci

source d'informationauteur Jeremy A. West