webbrowser wywołanie skryptu

0

Otóż potrzebuję wywołać taki skrypt: parent.waehleGarten(2)
Próbowałem już przeróżnych metod, ale nic mi nie działa.

0

Co konkretnie nie działa ? Może jakiś dłuższy kawałek kodu ?

0

Dłuższego kodu to tu nie ma. Mam taki obiekt na stronie:
<div style="position: absolute; top: 108px; left: 39px; width: 38px; height: 34px; background: transparent url(&quot;http://pics.wurzelimperium.de/pics/popin/map/garten_out.jpg&quot;) repeat scroll 0% 0%;" onclick="parent.waehleGarten(2)" onmouseover="this.style.background='url(http://pics.wurzelimperium.de/pics/popin/map/garten_over.jpg)';" onmouseout="this.style.background='url(http://pics.wurzelimperium.de/pics/popin/map/garten_out.jpg)';" class="link"><img src="http://pics.wurzelimperium.de/pics/leer.gif" height="34" width="38"></div>
i chcę aby program w niego kliknął/otworzył odnośnik.
Gdyby element ten posiadał id zrobiłbym to tak:

  webBrowser1.Document.GetElementById("jakiesid").InvokeMember("click");

ale że go nie posiada próbowałem wywołać parent.waehleGarten(2).

webBrowser1.Document.InvokeScript("parent.waehleGarten(2)");

Ale nie przynosi to żadnego efektu. Gdy wpiszę parent.waehleGarten(2) w konsoli WWW w przeglądarce (firefox) wszystko działa prawidłowo.

0

Właśnie spróbowałem podmienić wartość argumentu onclick innego obiektu na stronie który posiada id.

webBrowser1.Document.GetElementById("stammtischDiv").SetAttribute("onclick", "parent.waehleGarten(2)");
webBrowser1.Document.GetElementById("stammtischDiv").InvokeMember("click");

Lecz nie dało to efektu, i nawet po ręcznym kliknięciu w obiekt, nic się nie dzieje (nie ładuje się ani nowy skrypt, ani stary);

0

W dokumentacji https://msdn.microsoft.com/en-us/library/cc452443%28v=vs.110%29.aspx napisano jak się przekazuje parametry do wywoływanego skryptu ale po co tam zaglądać.

0

Już tam zaglądałem, niewiele mi to dało, dobrze to zapisuje?

webBrowser1.Document.InvokeScript("parent.waehleGarten)", "2");

Bo jakoś dalej mi nie działa.

0
webBrowser1.Document.InvokeScript("parent.waehleGarten", "2"); 
0

Nie wiem co to za skrypt ale z tego co widzę masz parametr mieć typu int więc chyba coś w deseń:

webBrowser1.Document.InvokeScript("waehleGarten", new object[] { 2 });

jak nie zadziała to

webBrowser1.Document.InvokeScript("parent.waehleGarten", new object[] { 2 }); 

gdyby jednak parametrem miał być string to:

webBrowser1.Document.InvokeScript("waehleGarten", new string[] {"2"}); 

lub

webBrowser1.Document.InvokeScript("parent.waehleGarten", new string[] {"2"}); 
0

Wielkie dzieki, to działa:

 webBrowser1.Document.InvokeScript("waehleGarten", new object[] { 2 });

1 użytkowników online, w tym zalogowanych: 0, gości: 1