Merhabalar.
Sayfadaki bir DIV elementinin içeriği ajax ile değişmekte.
İçerik ise grafikler ve JavaScript tooltipleri.
Birinci sorunum ajax işlemleri sonucunu almak için TWebBrowser'in hangi eventini kullanmam gerektiği.
ondocumentcomplete kullanılamıyor, ondownloadcomplete kullanıyorum, tabiki istediğim sonucu almak daha da karmaşıklaşıyor.
IHTMLElement bir onafterupdate eventine sahip, bunu kullanabilirmiyim? Aramalarımda bununla ilgili yeterli bir örnek bulamadım.
Ajax işlemi sonucunda hedef DIV elementinin içeriğini kontrol ediyorum,
içerdiği SPAN elementlerinin değiştiğini görüyor ve yeni bilgileri kolayca alıyorum ama aynı zamanda JavaScriptlerdeki değişmeleri alamıyorum.
Browser'de tooltipler değişiyor ama ben dökümanın kaynağına baktığımda hiç bir değişiklik belirleyemiyorum.
Referans link veya örnek verebilecek arkadaşlara teşekkür ederim.
TWebBrowser ve ajax
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: TWebBrowser ve ajax
Daha önce buna ilişkin bir cevap yazmıştım.
@mrmarman [url=http://www.delphiturkiye.com/forum/viewtopic.php?f=2&t=26385&p=148095&hilit=xislemtamam#p148095]bu tıklayacağınız[/url] linkte şöyle yazdı:Merhaba...
READYSTATE_COMPLETE olması sadece WebBrowser.Navigate komutuyla oluyor arkadaşlar. Gelen bir Web sayfasının içeriğini doldurduktan sonra web butonuna vs. click yapıyorsanız işe yaramıyor. Bu durumda OnDocumentComplete olayına başvuracaksınız. Daha önce tanımladığınız global bir değişkene ( örneğin değişkenimiz xIslemTamam:Boolean; olsun ) şöyle yazın.
Sonra da Button'a click yaptırdığınız yerdeki kodu şöyle yazın.Kod: Tümünü seç
procedure TForm1.EmbeddedWB1DocumentComplete(ASender: TObject; const pDisp: IDispatch; var URL: OleVariant); begin xIslemTamam := ( Pos('blank', URL) <= 0 ) ; end;
Bu döngü işinizi görecektir. Ben şimdi sonsuz döngüye çanak tuttum. Örnek olsun diye kısa tuttum. Bir de xIptal gibi bir global değişken tutun ve bunu da While kriterine dahil edin. herhangi bir yerde iptal butonuna vs. basılırsa xIptal değerini True yapar kullanıcının döngüden çıkabilmesini sağlarsınız.Kod: Tümünü seç
xIslemTamam := False; while NOT xIslemTamam do Application.ProcessMessages;
Başarılar dilerim.
Re: TWebBrowser ve ajax
İlginize teşekkürler ama sanırım farklı konulardan bahsediyoruz.
Ajax ile sayfada bir bölüm güncellenirken ondocumentcomplete hiç tetiklenmiyor.
Sayfa ilk yüklendiğinde bir kez çağrılıyor o kadar.
Bende mecburen ondownloadcomplete eventini kullanıyorum.
Yine de sayfanın html içeriği büyük bir oranda sayfa ilk yüklendiği şekliyle kalıyor.
Browser'da yeni halini kullanırken, kaynak kodunda ilk yüklendiği halini görüyorsunuz.
MSHTML'nin sayfanın güncellendiğinden, içerisinde birşeylerin değiştiğinden hiç haberi yok sanki..
Ajax ile sayfada bir bölüm güncellenirken ondocumentcomplete hiç tetiklenmiyor.
Sayfa ilk yüklendiğinde bir kez çağrılıyor o kadar.
Bende mecburen ondownloadcomplete eventini kullanıyorum.
Yine de sayfanın html içeriği büyük bir oranda sayfa ilk yüklendiği şekliyle kalıyor.
Browser'da yeni halini kullanırken, kaynak kodunda ilk yüklendiği halini görüyorsunuz.
MSHTML'nin sayfanın güncellendiğinden, içerisinde birşeylerin değiştiğinden hiç haberi yok sanki..
Re: TWebBrowser ve ajax
bu konuya çözümü olan varmı arkadaşlar.
Re: TWebBrowser ve ajax
Aynı sorun IE'dede var. Ajaxlı sayfalarda kodu göster dediğinizde ilk halini gösteriyor. Bence ajax'ın çağırdığı sayfayı bularak siz browserda direk çağırın.