JavaScript ile oluşturulan HTML taglarını WebBrowser'da görme

metehanozdeniz

Centipat
Katılım
26 Haziran 2019
Mesajlar
1
Yer
C:/
Daha fazla  
Cinsiyet
Erkek
Meslek
Programlama
Basit bir form uygulamasında, WebBrowser'a bir sitedeki basit işlemleri otomatikleştirerek yaptırmaya çalışıyorum.
Yaptırdığım işlem sitedeki inputa listboxdaki verileri teker teker girerek sorgulama yaptırıyorum. Veriyi sorguladıkdan sonra web sayfasında <table> içerisinde sorgumun sonucu geliyor. Sıkıntım burada başlıyor. Gelen bu sorgumun sonucu sonradan JavaScript ile oluşturulduğundan WebBrowser'da sorgumun sonucunun HTML taglarını göremiyorum. Dolayısı ile de gelen sonuca WebBrowser ile tıklama işlemini gerçekleştiremiyorum.
JavaScript ile otomatik olarak oluşan HTML tagları;

HTML:
<div>
<ul id="ilistview2" data-role="listview" data-inset="false" class="ui-listview">
<li class="ui-first-child ui-last-child">
<a href="#" onclick="getDetay(Her sorguda buradaki parametre değişiyor);" class="ui-btn ui-btn-icon-right ui-icon-carat-r">
<table style="width:100%">
<tbody>
<tr>
<td width="10%" align="left">1&nbsp;&nbsp;</td>
<td style="font-size:11px"><strong style="font-size:15px">İsim Soyisim</strong><br>
<font style="font-size:12px;font-weight:bold">Numara</font><br>
<font style="font-size:10px">BİLGİ</font></td>
</tr>
</tbody>
</table>
</a>
</li>
</ul>
</div>

JavaScript ile sonradan oluşan bu HTML tagındaki linke tıklamanın bir yolu var mı? Hangi yolu denediysem olmadı. İnternette uzun araştırmalarım sonuçsuz kaldı. Yardım edecek arkadaşlara şimdiden teşekkür ediyorum.
Yoğun ilginizden dolayı hepinize teşekkür ediyorum arkadaşlar. Sorunumu çözdüm. Eğer aynı sorunla karşılaşabilecekler için çözümü;
Web sayfasında ki Html tagları javascript ile oluşturulduğu için, bu taglara, web sayfasındaki javascript fonksiyonlarını InvokeScript metodunu kullanarak çalıştırdım ve taglara ulaştım.
Kullanımı:
C#:
private void InvokeTestMethod(String javascript_fonksiyonunun_parametresi, String javascript_fonksiyonunun_parametresi2)
{
    if (webBrowser1.Document != null)
    {
        Object[] objArray = new Object[2];
        objArray[0] = (Object)javascript_fonksiyonunun_parametresi;
        objArray[1] = (Object)javascript_fonksiyonunun_parametresi2;
        webBrowser1.Document.InvokeScript("javascript_fonksiyonunun_ismi", objArray);
    }
}

Web sayfasında ki herhangi bir javascript değişkenindeki değeri almak istiyorsak:

C#:
var ad = webBrowser1.Document.InvokeScript("eval", new object[] { "personel[0].isciAdi" }).ToString();

Web sayfasında ki Html tagları javascript değişkeninin içinde tutulduğundan bu şekilde taglara erişebildim.
 
Son düzenleme:
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Geri
Yukarı