पर चयनकर्ता 'से शुरू होता'उपयोग व्यक्ति वर्ग के नाम
$("div[class^='apple-']")
हालांकि, अगर मैं के बाद से पहली div के वर्ग एक स्ट्रिंग (मुझे लगता है कि) के रूप में लौट आए और ऐसा नहीं करता है,
<div class="some-other-class apple-monkey"></div>
<div class="apple-horse"></div>
<div class="cow-apple-brick"></div>
यह केवल दूसरा dIV मिलेगा: इस राशि वास्तव में साथ 'सेब' बल्कि 'लिए-'
एक तरह से शुरू है कि चारों ओर के साथ शुरू होता है का उपयोग नहीं करने के लिए है, लेकिन इसके बजाय शामिल हैं:
$("div[class*='apple-']")
उस के साथ समस्या यह भी 3 का चयन करेंगे मेरे उदाहरण में डीआईवी।
प्रश्न: jQuery के माध्यम से, एक वर्ग के रूप में संपूर्ण वर्ग विशेषता के बजाय व्यक्तिगत वर्ग नामों पर अनुमानित चयनकर्ताओं का उपयोग करने का उचित तरीका क्या है? क्या यह सिर्फ क्लास को पकड़ने की बात है, फिर इसे एक सरणी में विभाजित कर रहा है और फिर प्रत्येक व्यक्ति को रेगेक्स के साथ लूप कर रहा है? या क्या एक और अधिक सुरुचिपूर्ण/कम वर्बोज़ समाधान है?
+1। हालांकि मैं @parrots के सुझाव से सहमत हूं कि "सेब" यहां अपनी खुद की कक्षा होनी चाहिए, क्योंकि यह स्पष्ट रूप से एकाधिक divs को ओवरलैप करता है, फिर भी यह एक अलग इकाई है। लेकिन यह समस्या हल करता है। – jvenema
हम्म ... चालाक! मैंने वहां जगह का उपयोग करने के बारे में सोचा नहीं था। क्या कोई एक jquery चयनकर्ता में बुलियन ऑपरेटर का उपयोग कर सकता है? आदर्श रूप से, उपर्युक्त (दुर्लभ और संभावित टालने योग्य) मामले से बचने के लिए उपरोक्त 'OR' होगा जहां 'सेब-' –
के साथ एक से अधिक कक्षाएं हैं, मुझे यकीन नहीं है कि मैं समझता हूं, लेकिन यदि आप केवल दूसरे चयनकर्ता का उपयोग करना चाहते हैं पहला चयनकर्ता शून्य तत्व देता है, आप ऐसा कुछ कर सकते हैं: 'var divs = $ (" div [class^= 'apple-'] "); अगर (divs.length == 0) divs = $ ("div [class * = 'apple -']"); ' –