multi 4u Ответов: 1

Как загрузить обновленное содержимое для выполнения некоторой обработки с помощью элемента управления webbrowser


I'm using a WebBrowser control in my app to load a page that updates its content dynamically via Ajax. I need to access the updated content to do some processing, but since the calls are made with Ajax the page doesn't get refreshed and thus the DocumentComplete event doesn't fire. 
Is there a way to get notified when a call is made using the XMLHttpRequest object? Some event fires maybe?
Any help will be appreciated, 


Что я уже пробовал:

Я ничего не пробую в этом деле

1 Ответов

Рейтинг:
1

Nick_3141592654

объект XMLHttpRequest имеет свойство onReadyStateChange.

Вы можете назначить ему такую функцию, как:

var xmlHttpReq;  // You need to fill-in details for creation of this
                 // request object and triggering the request etc.

function respAjax() {
  if (xmlHttpReq.readState == 4) {
    // Request has finished and response is ready.
    // Do whatever you want here..
  }
}

xmlHttpReq.onReadStateChange = respAjax;


Глава 11 из Sams_Teach_Yourself_Ajax.. предоставляет гораздо больше информации, и если вы делаете Ajax, то это превосходная книга для чтения.


multi 4u

не могли бы вы объяснить еще немного?Только расскажи мне о процессе.Спасибо

Nick_3141592654

Я думаю, что вам нужно сначала рассказать больше о вашем текущем подходе, потому что вы еще не объяснили точно, как Вы делаете Ajax. Я вернулся к основам, которые представляют собой необработанный XMLHttpRequest - это фундаментальный способ выполнения Ajax, однако существует множество реализаций, которые оборачивают такой запрос внутри какой-либо библиотеки или в комплекте с элементом управления.

Попробуйте еще раз взглянуть на API для WebBrowserControl, который вы упомянули (и, пожалуйста, скажите нам точно, что это такое), я был бы удивлен, если бы он не сделал событие onReadyStateChange доступным для вас.