2011-01-11 12 views
5

का उपयोग करके निष्पादित नहीं किया गया है, जबकि मैं आईई में documnet.write का उपयोग करके एक आईफ्रेम डालने का प्रयास कर रहा था, मुझे सफलता मिली। लेकिन, उसके बाद कोई भी एचटीएमएल कोड निष्पादित नहीं किया गया है।iframe के बाद किसी भी HTML कोड को document.write

document.write("<div>Hello</div><iframe ..../><div>Bye Bye</div>"); 

यहां "अलविदा" स्ट्रिंग निष्पादित नहीं की गई है।

एक पल के लिए जाँच आप अपने ब्राउज़र यूआरएल

javascript:document.write("<div>Hello</div><iframe ..../><div>Bye Bye</div>"); 

में टाइप कर सकते हैं परीक्षण और त्रुटि करने के बाद, मैंने पाया है कि अगर मैं निम्नलिखित तरीके से iframe टैग बंद करते हैं, यह काम करता है।

<iframe ...></iframe> instead of <iframe ... /> 

अब, समस्या "मैं <iframe ../><iframe .. ></iframe> को बदलने के लिए किसी भी अवसर नहीं है" है। अपनी तरह की सलाह की तलाश में है।

+0

क्या doctype प्रयोग कर रहे हैं? –

+0

@ पेक्का Hoque

+0

ओह, यह असफल हो सकता है। स्ट्रिंग को बदलने का बिल्कुल कोई तरीका नहीं है? मुझे लगता है कि आईई तोड़ने वाले एक्सएचटीएमएल दस्तावेज़ों में '

1

तुम दोनों स्ट्रिंग को बदलने के लिए किसी भी अवसर नहीं है, तो (यानी आप इसे पहले से नहीं पढ़ सकते हैं) और document.write कोड का हिस्सा है, मुझे लगता है कि कम से कम आपको दस्तावेज़ में कुछ कोड संपादित/डालने की अनुमति है (या अन्यथा आपको यह प्रश्न नहीं होना चाहिए क्योंकि आप सचमुच कुछ भी नहीं कर सकते हैं)।

इस तरह से, पहले बातें होती हैं कुछ कोड डालने से document.write() विधि टेम्परिंग का प्रयास करें:

document.write=function(str){ 
    str=str.replace(/<iframe([^>]*?)\/>/ig,'<iframe$1></iframe>'); 
    return document.writeln(str); 
} 
संबंधित मुद्दे