/ / जावास्क्रिप्ट WebBrowser - c # द्वारा अपडेट की गई सामग्री को कैसे पकड़ें, webbrowser- नियंत्रण

सामग्री वेबक्राउज़र द्वारा अपडेट की गई सामग्री को कैसे पकड़ें - सी #, वेबब्रोसर-कंट्रोल

private void button1_Click(object sender, EventArgs e)
{
webBrowser1.Navigate(textBox1.Text);
}

private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
WebBrowser web = (WebBrowser)sender;
richTextBox1.Text = web.DocumentText;
}

ऊपर नमूना कोड है। यदि सामग्री को जावास्क्रिप्ट द्वारा अद्यतन किया जाता है, तो यह वर्तमान पाठ के सभी पाठ दे रहा है, यह दृश्यमान है, लेकिन Document.Text अद्यतन नहीं।

कृपया लोगों की मदद करें

उत्तर:

उत्तर № 1 के लिए 4

मुझे भी यही समस्या थी। निम्नलिखित नमूना कोड का उपयोग करें:

IHTMLDocument2 doc = webBrowser1.Document.DomDocument as IHTMLDocument2;
string content = doc.body.innerText;

इसके अलावा, अपने प्रोजेक्ट के संदर्भ में mshtml जोड़ें (यदि आप नहीं जानते कि रेफ़रे को कैसे जोड़ना है, तो बस इसे Google में जोड़ें)।

दरअसल, जब भी आप इस कोड का उपयोग करते हैं, तो मूल्य doc चर वेबब्रोसर की सामग्री का अद्यतन संस्करण है।

शुभ लाभ


जवाब के लिए 0 № 2

मुझे लगता है कि वह जावास्क्रिप्ट जो पृष्ठ पर निष्पादित हो रहा है जो सामग्री को संशोधित कर रहा है बाद दस्तावेज़कंप्लीट की गई घटना; शायद आप एक अलग घटना जैसे "अमान्य" की कोशिश कर सकते हैं।

WebBrowser.DocumentText भी कई डोम में किसी भी परिवर्तन को प्रतिबिंबित नहीं करता है, और आपको WebBrowser.Document संपत्ति के माध्यम से DOM को नेविगेट करने की आवश्यकता हो सकती है।

http://msdn.microsoft.com/en-us/library/system.windows.forms.webbrowser.document.aspx