如何从ajax更新的页面中获取内容

本文关键字:获取 ajax 更新 | 更新日期: 2023-09-27 18:29:34

我在应用程序中使用WebBrowser。当我点击提交按钮时,一些javascript会运行,通过使用ajax,页面会获得一些我想要保存的新内容。但它不起作用,如果我这样做:

btn.InvokeMember("click"); // send the form and then runs AJAX
Thread.Sleep(1000 * 10); // it doesn't take so long... but about 1000
var d = browser.Document.GetElementsByTagName("p"); // p is null

但如果我通过点击按钮调用var d = browser.Document.GetElementsByTagName("p");,即使我删除了Thread.Sleep(1000 * 10); ,它也能工作(p不是null

我不知道为什么。这并不是因为p HTML标记还没有加载,因为即使没有Thread.Sleep()调用,点击按钮也会花费更少的时间,但我得到了HTML元素。

我希望这是清楚的,但如果不是,告诉我,我会努力澄清。

如何从ajax更新的页面中获取内容

尝试timer而不是sleep,然后检查浏览器。ReadyState == WebBrowserReadyState.Complete