मेरे पास निम्न नेस्टेड सूची है:

<ul id="myList">
    <li>
        <ul>
            <li class="red"></li>
            <li class="black"></li>
        </ul>
    </li>
    <li class="red"></li>
    <li class="red"></li>
    <li class="black"></li>
</ul>

मैं वर्ग "लाल" और "ब्लैक" के साथ तत्वों का चयन कैसे करूं जो केवल सीधे बाहरी के अंदर दिखाई देते हैं (और नेस्टेड टैग के अंदर शामिल नहीं हैं)?

0
JoeTidee 17 नवम्बर 2015, 04:28

3 जवाब

सबसे बढ़िया उत्तर

आपको & gt; चिह्न का उपयोग करना होगा

#myList > li.red , #myList > li.black

डेमो

और अगर आपको आंतरिक उल के अंदर लाल और काले रंग की आवश्यकता है

#myList ul > li.red , #myList ul > li.black

मैं चयनकर्ताओं / के बारे में पढ़ने की सलाह देता हूं एक >

1
Mohamed-Yousef 17 नवम्बर 2015, 01:48
 $("#myList>.red ,#myList>.black")

">" बेटे का मतलब है, इसलिए चयनकर्ता "# लीलिस्ट> .्रेड" का अर्थ है आईडी के साथ div # myList का बेटा (कक्षा लाल है), यह पोते का चयन नहीं करेगा,

"," का अर्थ है दूसरे चयनकर्ता से जुड़ें, #myList> का उपयोग करके।

मुझे लगता है कि यह अपेक्षित परिणाम है। मेरी खराब अंग्रेजी के लिए माफी चाहूंगा। मैं आपको jQuery चयनकर्ता के बारे में पढ़ने की भी सलाह देता हूं, यह वास्तव में बुनियादी और महत्वपूर्ण है।

0
lynnsea 17 नवम्बर 2015, 02:50

.not(), .black वर्गों का चयन करने के लिए .not() का उपयोग करने का प्रयास करें जो किसी भी तत्व के बाल तत्व नहीं हैं।

$(".red, .black").not("#myList * *").css("color", "blue")
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<ul id="myList">
    <li>
        <ul>
            <li class="red"></li>
            <li class="black"></li>
        </ul>
    </li>
    <li class="red"></li>
    <li class="red"></li>
    <li class="black"></li>
</ul>
0
guest271314 17 नवम्बर 2015, 01:55