2010-01-30 15 views
42

jquery का उपयोग कर पैरेंट विंडो ऑब्जेक्ट को कैसे प्राप्त करें?jquery का उपयोग कर पैरेंट विंडो ऑब्जेक्ट तक कैसे पहुंचे?

यह मेरा मूल विंडो चर है, मैं बाल खिड़की बंद करने के बाद अपना मूल्य निर्धारित करना चाहता हूं।

$('#serverMsg').html('some text here'); 

उत्तर

72
window.opener.$("#serverMsg") 
+0

केवल तभी काम करता है जब सलामी बल्लेबाज JQuery सक्रिय है, मुझे लगता है। –

+1

हाँ, ज़ाहिर है ... – roman

+0

सही, धन्यवाद! –

16

आप एक पो-अप में हैं और आप उद्घाटन खिड़की तक पहुँचने के लिए चाहते हैं, window.opener का उपयोग करें। सबसे आसान अगर आप रूप में अच्छी तरह माता-पिता विंडो में JQuery लोड कर सकता होगा:

window.opener.$("#serverMsg").html // इस माता पिता खिड़की

में JQuery का उपयोग करता है या आप सादे पुराने document.getElementById का उपयोग तत्व प्राप्त करने के लिए कर सकता है, और उसके बाद का विस्तार यह आपके बच्चे की खिड़की में jquery का उपयोग कर रहा है। निम्नलिखित चाहिए काम (मैं इसे परीक्षण नहीं किया है, हालांकि):

element = window.opener.document.getElementById("serverMsg"); 
element = $(element); 

आप एक iframe या फ्रेम में हैं और माता-पिता फ्रेम का उपयोग करना चाहते हैं, window.parent बजाय window.opener का उपयोग करें।

समान उत्पत्ति नीति के अनुसार, यह सब केवल तभी काम करता है जब बच्चे और माता-पिता दोनों एक ही डोमेन में हों।

7

या आप एक और दृष्टिकोण का उपयोग कर सकते हैं:

$("#serverMsg", window.opener.document) 
+0

मैं इस दृष्टिकोण को पसंद करता हूं क्योंकि यह jQuery वाली खुली खिड़की पर भरोसा नहीं करता है - हालांकि शायद यह jQuery भी होगा। –

0

यहाँ एक अधिक शाब्दिक जवाब (के रूप में सलामी बल्लेबाज का विरोध किया माता-पिता विंडो) है मूल प्रश्न है कि iframe के भीतर इस्तेमाल किया जा सकता करने के लिए, डोमेन संभालने मूल विंडो की आईफ्रेम मैचों में नाम:

window.parent.$("#serverMsg") 
संबंधित मुद्दे