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

时间:2014-11-07 02:27:18

标签: javascript c# ajax browser

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

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");,即使我删除了p

,也会点击它null不是Thread.Sleep(1000 * 10);}

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

我希望这很清楚,但如果它没有告诉我,我会尝试澄清。

1 个答案:

答案 0 :(得分:1)

尝试使用timer代替sleep并检查浏览器。 ReadyState == WebBrowserReadyState.Complete