2013-04-19 8 views
5

मैं एक छिपे हुए अवधि के आंतरिक HTML प्राप्त करने की कोशिश कर रहा हूं। जावास्क्रिप्ट एक आईफ्रेम HTML पृष्ठ से है, और छुपा अवधि मूल पृष्ठ में रहता है। एक अलग समारोह काम करता है जब माता पिता से एक सूची की सामग्रियों तक, लेकिन मैं अपने अवधि में प्राप्त करने के लिए ...जावास्क्रिप्ट त्रुटि, नाम के बाद नाम गुम है। ऑपरेटर

काम करता है

document.getElementById(parent.genL[i]); 

does not काम

document.getElementById(parent."span"+i).innerHTML; 
- SyntaxError: missing name after . operator 

नहीं कर पा रहे कोड की उपरोक्त रेखा लूप के लिए रहता है और जैसा कि यह मेरे माध्यम से पुनरावृत्त होता है, यह प्रत्येक अलग अवधि से डेटा ले जाएगा। छुपे हुए स्पैन 10-40k अलग छिपे हुए स्पैन के ऊपर आईडी "span1" से शुरू होते हैं।

वैसे भी, मुझे एहसास है कि इसे स्ट्रिंग int i को संयोजित करने की कोशिश करने के साथ कुछ करना है। मुझे लगता है कि मैं वैसे भी एक int है। कोई विचार? बहुत बहुत धन्यवाद!

संपादित करें - शब्द, और आंतरिक HTML भाग को कोड की कार्य लाइन नहीं जोड़ता है। सुनिश्चित नहीं है कि इससे कोई फर्क पड़ता है या नहीं ...

संपादित 2 - सभी को महान जवाब, कुछ अच्छी वाक्य रचनात्मक चालें सीखा :) मैं बस माता-पिता को ले गया। mplungjan की टिप्पणी और जैकब टी। नील्सन से जवाब के अनुसार कोड के सामने भाग। किसी कारण से मुझे अभी भी सुझाए गए ब्रैकेट का उपयोग करके त्रुटि मिली है, लेकिन भविष्य में इसी तरह की स्थितियों के लिए मैं निश्चित रूप से ब्रैकेट को अपनी याद में टकरा दूंगा!

parent.document.getElementById("span"+i).innerHTML; 

:)

उत्तर

5

मुझे लगता है कि आप जो करने की कोशिश कर रहे हैं वह मूल पृष्ठ पर i-th अवधि तत्व प्राप्त करना है। सही बात?

आप इस

var s = parent.document.getElementsByTagName('span')[i]; 
s.innerHTML // <-- access innerHTML 
6

एक इंडेक्सर करने के लिए इसे बदलने का प्रयास करें।

document.getElementById(parent["span"+i]); 
+1

की तरह यह कर सकते हैं वे दोनों "अनुक्रमण" कर रहे हैं। शब्दों में अंतर "डॉट नोटेशन" (ओपी क्या कोशिश कर रहा है) बनाम "ब्रैकेट नोटेशन" (आपके पास क्या है) – Ian

+3

या शायद parent.document.getElementById ("span" + i); – mplungjan

6

तो कोष्ठक में parent एक वस्तु है और आप तो आप डॉट के बजाय ब्रैकेट संकेतन का उपयोग करने की आवश्यकता है parent.span1 की तरह कुछ का उपयोग करने की कोशिश कर रहे हैं।

document.getElementById(parent["span"+i]); ठीक काम करना चाहिए।

संबंधित मुद्दे