शुद्ध जावास्क्रिप्ट पर कक्षा के नाम से सभी तत्व कैसे प्राप्त करें? Jquery में एनालॉग $ ('वर्ग')?कक्षा के नाम से सभी तत्व कैसे प्राप्त करें?
उत्तर
document.getElementsByClassName(klass)
पता है कि कुछ इंजन (विशेष रूप से पुराने ब्राउज़र) यह नहीं है हो सकता है। यदि मामला है तो आप एक शिम का उपयोग करने पर विचार कर सकते हैं। यह धीमा हो जाएगा, और पूरे दस्तावेज़ पर फिर से शुरू होगा, लेकिन यह काम करेगा।
some browsers में document.getElementsByClassName(class)
फ़ंक्शन है। अन्यथा, आपके पास एकमात्र विकल्प है जो आवश्यक वर्ग नाम रखने की आपकी स्थिति के विरुद्ध प्रत्येक की जांच करके दस्तावेज़ में सभी तत्वों को पुन: सक्रिय करना है।
document.getElementsByClassName('your class');
या आप, इस तरह से अपनी classname निर्माण है कि अगर यह
if (!document.getElementsByClassName) {
document.getElementsByClassName=function(cn) {
var allT=document.getElementsByTagName('*'), allCN=[], i=0, a;
while(a=allT[i++]) {
a.className==cn ? allCN[allCN.length]=a : null;
}
return allCN
}
}
कोशिश काम नहीं करता है सकते हैं यह काम करना चाहिए:
function(className)
{
var matchingItems = [];
var allElements = document.getElementsByTagName("*");
for(var i=0; i < allElements.length; i++)
{
if(allElements [i].className == className)
{
matchingItems.push(allElements[i]);
}
}
return matchingItems;
}
हाँ, लेकिन यह उपयोग करने के लिए मेरा सुझाव नहीं है इस तरह, मैंने इस तरह कुछ करने का प्रयास किया और फिर मुझे आई 7 में एक बड़ा प्रदर्शन मुद्दा मिला, क्योंकि यह बहुत धीमी गति से चल रहा है –
मैं सहमत हूं। निश्चित रूप से अधिक सुरुचिपूर्ण समाधान हैं। मैं देखता हूं कि नीचे @ कुनल नियमित अभिव्यक्तियों का उपयोग कर रहा है जो क्लीनर भी है। मैं बस एक त्वरित विकल्प प्रदान कर रहा था ताकि अनुरोधकर्ता एक विचार प्राप्त कर सके। – spinon
यह काम नहीं करेगा यदि तत्व –
function getElementsByClassName(oElm, strTagName, strClassName){
var arrElements = (strTagName == "*" && oElm.all)? oElm.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\\-");
var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
पर दो वर्ग लागू होते हैं, यह साइट पॉइंट बुक में कोड स्निपेट जैसा दिखता है। बस उत्सुक है अगर यह स्रोत है, या यह सिर्फ एक अजीब संयोग है? – pqsk
कई तकनीकों का वर्णन और गति यहां परीक्षण किया गया: http://ejohn.org/blog/getelementsbyclassname-speed-comparison/
एक साधारण और एक आसान तरीका
var cusid_ele = document.getElementsByClassName('custid');
for (var i = 0; i < cusid_ele.length; ++i) {
var item = cusid_ele[i];
item.innerHTML = 'this is value';
}
आगे बढ़ते समय, यदि लूप में तत्व हटा दिए जाते हैं तो लूप प्रत्येक दूसरी प्रविष्टि को छोड़ देगा। तो, बेहतर पीछे की तरफ जाओ। (मैंने पेयर समीक्षा लंबित, तदनुसार जवाब संपादित किया।) –
- 1. तत्व प्राप्त कक्षा नाम
- 2. तत्व के सभी सीएसएस कैसे प्राप्त करें
- 3. नाम से फॉर्म तत्व प्राप्त करें?
- 4. मॉड्यूल से कक्षा का नाम प्राप्त करें
- 5. रूबी में नाम से कक्षा प्राप्त करें?
- 6. jquery का उपयोग कर नाम से तत्व कैसे प्राप्त करें?
- 7. jquery: कक्षा के नाम से तत्व प्राप्त करें और उनमें से प्रत्येक को सीएसएस जोड़ें
- 8. कक्षा के पूर्ण योग्यता प्राप्त नाम प्राप्त करें?
- 9. जावा में कक्षा नाम से क्लास ऑब्जेक्ट कैसे प्राप्त करें
- 10. स्थैतिक बाल विधि से कक्षा का नाम कैसे प्राप्त करें
- 11. कक्षा संपत्ति का नाम प्राप्त करें
- 12. डेल्फी क्रोमियम एम्बेडेड में नाम से तत्व कैसे प्राप्त करें?
- 13. ग्रोवी क्लास के सभी संपत्ति नाम कैसे प्राप्त करें?
- 14. पैकेज के बिना कक्षा का नाम कैसे प्राप्त करें?
- 15. वर्तमान कक्षा का नाम प्राप्त करें?
- 16. किसी तत्व के सभी सीएसएस वर्ग कैसे प्राप्त करें?
- 17. फॉर्म तत्व का नाम प्राप्त करें
- 18. एक्सपैथ - तत्व के सभी गुण नाम और मान कैसे प्राप्त करें
- 19. किसी संस्था में गुणों के सभी नाम कैसे प्राप्त करें?
- 20. एक jQuery तत्व चयनकर्ता में एकाधिक नाम कैसे प्राप्त करें?
- 21. कक्षा के सभी गुणों के माध्यम से कैसे लूप करें?
- 22. सभी तत्व प्राप्त करें लेकिन एक सरणी से पहले
- 23. कक्षा विधि के बिना रूबी क्लास नाम प्राप्त करें
- 24. jqgrid सभी ग्रिड कॉलम नाम प्राप्त करें
- 25. तत्व प्रकार और कक्षा के नाम के लिए Jquery चयनकर्ता?
- 26. उसी कक्षा के साथ अगला तत्व प्राप्त करें
- 27. जावास्क्रिप्ट: आईडी आईडी के साथ सभी तत्व प्राप्त करें [x]
- 28. निरंतर नाम कैसे प्राप्त करें?
- 29. केवल कक्षा का नाम कैसे प्राप्त करें, पूर्ण पथ नहीं?
- 30. पायथन ElementTree के साथ तत्व पेड़ के सभी उप-तत्व कैसे प्राप्त करें?
http://stackoverflow.com/questions/1933602/how-to-getelementbyclass-instead-of-getelementbyid-with-javascript – silly