कैसे वापस जाने के लिए तत्व आईडी के बजाय [वस्तु HTMLDivElement] (Prototype.js)

वोट
11

मैं जानता हूँ कि यह आसान है, लेकिन मैं इसे चारों ओर मेरे सिर लपेटो नहीं कर सकते। वर्तमान में निम्न कोड रिटर्न [वस्तु HTMLDivElement], [वस्तु HTMLDivElement] मैं इसे div1, DIV2 वापसी करना चाहते हैं। कोई विचार? धन्यवाद दोस्तों।

<HTML>
<HEAD>
<script type=text/javascript src=path_to/prototype.js></script>
<script>
function linkClick ()
{
    alert($$('div.basic'));
}
</script>
</HEAD>
<BODY>
   <div id=div1 class=basic onclick=linkClick();></div>
   <div id=div2 class=basic onclick=linkClick();></div>
</BODY>
</HTML>
22/02/2009 को 23:42
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


4 जवाब

वोट
2
var ids = $$('div.basic').collect(function(el) { return el.id; }); //array of ids

alert(ids.join(','));

इकट्ठा का दूसरा नाम है नक्शा है, जो आप प्रत्येक के लिए एक "चयनकर्ता" समारोह लगाने से एक और प्रकार में संग्रह के तत्वों एक प्रकार को बदलने के लिए अनुमति देता है।

22/02/2009 को 23:47
का स्रोत उपयोगकर्ता

वोट
1
alert($$('div.basic').invoke('identify').join(',');

आह्वान नाम से एक समारोह कॉल करेंगे। पहचान समारोह आईडी प्रदान करेगा। जब एक सरणी पर बुलाया यह उनकी आईडी की एक सरणी वापस आ जाएगी। शामिल हों उन दोनों के बीच में अल्पविराम के साथ एक स्ट्रिंग में बदल जाता है।

23/02/2009 को 14:11
का स्रोत उपयोगकर्ता

वोट
20

मैं एक ही समस्या थी, वहाँ एक सरल उपाय है:

यदि varElement एक [HTMLDivElement] (या अन्य डोम वस्तु) से युक्त अपने उद्देश्य केवल जोड़ने है '.id'

जैसे

varElement.id 
06/03/2009 को 14:20
का स्रोत उपयोगकर्ता

वोट
4

इस के लिए विशेष रूप से प्रोटोटाइप में एक अनुकूलन है:

$$('div.basic').pluck('id')

अगर मैं आपके सवाल का सही पढ़ा है, आप के बजाय एक अल्पविराम के द्वारा अलग आईडी के एक स्ट्रिंग div आईडी की सूची, चाहते हैं।

06/03/2009 को 14:31
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more