2009-01-25 16 views
11

में एक फॉर्म तक पहुंचने का उपयोग कर रहा हूं, मैं एक फॉर्म और उसके तत्वों तक पहुंच प्राप्त करने का प्रयास कर रहा हूं। फॉर्म एक आईफ्रेम के भीतर है और जावास्क्रिप्ट कोड जो फॉर्म तक पहुंच रहा है मुख्य दस्तावेज़ में है।एक आईफ्रेम

मुझे यकीन नहीं है कि मुझे इस प्रश्न में और क्या करना चाहिए, इसलिए अगर मुझे कुछ और जोड़ने की ज़रूरत है तो कृपया मुझे बताएं।

(फार्म और मुख्य पृष्ठ पर एक ही डोमेन में हैं)

धन्यवाद

उत्तर

14
var ifr = document.getElementById(yourIframeId); 
var ifrDoc = ifr.contentDocument || ifr.contentWindow.document; 
var theForm = ifrDoc.getElementById(yourFormId); 

या आप फ्रेम कि फार्म के लिए parent में एक चर सेट में कुछ कोड हो सकता था, लेकिन मैं wouldn ' उस विधि पर विश्वास नहीं है।

+1

Uncaught DOMException:: 'HTMLIFrameElement' से 'contentDocument' संपत्ति को पढ़ने में विफल: फ्रेम नाम "myframe" है मूल के साथ एक फ्रेम अवरोधित है, यह दो अलग-अलग डोमेन के लिए काम नहीं करेगा। –

+0

क्या आपके पास यह काम क्रॉस डोमेन के लिए भी करने का कोई सुझाव है? –

3

यदि आपके iframe में name विशेषता है, जिसे विंडो नाम के रूप में उपयोग किया जा सकता है।

myframe.document.getElementById("myform") // gives you the form element 
+0

आप आईडी द्वारा तत्व प्राप्त करने के लिए फ्रेम आईडी का भी उपयोग कर सकते हैं, जैसा आपने फ्रेम से आईडी द्वारा फ़ॉर्म प्राप्त करने के साथ किया था। बेशक, फॉर्म में एक आईडी भी है। – Eddie

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