$(this).parents(".category")[0].childNodes[0].textContent;
のchildNodesでこの部分
$(this).parents(".category").text()
を交換して、テキストノードを含むすべての子要素を返します試してみてください。
あなただけのjQueryを使用したい場合は、スパン内
<ul>
<li class="category">
<span>Design</span>
<ul>
<li>Graphic Design</li>
<li>Web Design </li>
<li>HTML</li>
<li>CSS</li>
<li>Print</li>
</ul>
</li>
<li class="category">
<span>Development</span>
<ul>
<li>PHP</li>
<li>Java</li>
</ul>
</li>
</ul>
このtextnodeをラップし、別のアプローチは、のcontents
とfilter
を使用することができ
$(this).parents(".category span").html()
を使用して、その最初のノードのテキストを取得jquery
$(this).parents(".category").contents().filter(function() {
return this.nodeType == 3;
}).nodeValue;
それはあなたに感謝働いたが、私はjqueryのを使用するためにバインドされています、とにかく我々はjQueryを使ってそれを達成することができますがありますか? –
@BilalHussain jqueryがjqueryで十分動作するかどうかは不明です。実際には、マークアップを変更してスパンや他の要素の中にそのテキストを含めるべきです – gurvinder372
'.filter()'を使うことができます。 – Jai