2012-12-17 17 views
7

मेरे पास HTML है और मुझे इस HTML का पृष्ठ स्रोत प्राप्त करने की आवश्यकता है।जावास्क्रिप्ट: वर्तमान पृष्ठ प्राप्त करें वर्तमान स्रोत

document.documentElement.outerHTML 

या

$.ajax({ 
async: true, 
type: 'GET', 
cache: false, 
url: window.location.href, 
success: function(data) { 
    alert(data); 
} 
}); 

काम कर रहा है, लेकिन वे मूल रूप से स्रोत प्रदर्शित करते हैं। अगर मैं एचटीएमएल (उदाहरण के लिए, jQuery द्वारा) बदलता हूं, तो वे मेरे परिवर्तन नहीं पढ़ते हैं।

क्या यह पृष्ठ का वर्तमान स्रोत संभव है?

+2

आप स्रोत नहीं चाहते हैं, लेकिन डोम? – EricG

+0

शायद, आप सही – indapublic

+0

'document.getElementsByTagName (" HTML ") [0] .outerHTML' के बारे में कैसे? – EricG

उत्तर

5

jQuery का उपयोग करके आप ऐसा कर सकते हैं:

$('body').html(); 

उदाहरण के लिए।

या स्ट्रिंग के लिए कनवर्ट:

$('body').html().toString(); 
+0

'body.parentNode' ..? – EricG

+0

यह पूरा पृष्ठ नहीं है, मुझे लगता है? – indapublic

+0

@indapublic इसका शरीर, HTML उपयोग के लिए '$ ('html')' – antyrat

1

तुम बस तत्व हड़पने और html विधि का उपयोग करने की जरूरत है:

$('.selector').html(); 
7

क्रोम पर यह कोशिश की और यह काम करता है। का प्रयोग करें

document.documentElement.innerHTML 

काफी मजेदार है अपने कोड भी काम किया

document.documentElement.outerHTML 

एचटीएमएल इस fiddle में कंसोल के लिए मुद्रित चेक बाहर। इसमें वास्तव में jQuery द्वारा किए गए परिवर्तन शामिल हैं।

+0

ध्यान दें कि इसमें शामिल होगा जो डीओएम को किया गया है। उदाहरण के लिए, कुछ प्लगइन्स HTML को इंजेक्ट करते हैं, और यदि आप