2012-05-17 57 views
2

我在perl中使用Win32::IEAutomation填寫表單並進行搜索,但是當我使用getButton()->Click時,出現錯誤"Can't call method "Click" on an undefined value"。我可以點擊圖片(執行JavaScript),但不是按鈕。我在文件建立了Win32::IEAutomation注意到,它說,在這兩個「getImage」和「getLink」下面,而不是「getButton」下:由於它使用DOM的點擊方法,它支持點擊它使用JavaScript鏈接如何在單擊IEAutomation中的按鈕時執行Javascript?

」 「。

任何人都可以告訴我如何點擊按鈕並啓動JavaScript?

這是我的代碼的骨架。最後一行是一個給我的麻煩:

use Win32::IEAutomation; 
my $ie = Win32::IEAutomation->new(visible => 1); 
$ie->gotoURL('https://www.mywebpage.com/index.html',1); 

$ie->getTextBox('id:', "mytextbox")->SetValue("relevant text"); 
$ie->getButton('id:', "mybutton")->Click; 

這裏是HTML的相關部分:

<input type="text" id="mytextbox" /> 
<button id="mybutton" title="Go" class="ControlButton" value="Go" onclick="researchLookupObj.GoClick(CallServer);return false;">Search</button> 

我能夠得到的文本框中填寫(和我能夠點擊這裏沒有顯示的代碼中的一個圖像),但用按鈕獲取錯誤。我怎麼能告訴它執行名爲「researchLookupObj.GoClick()」的JavaScript?

+0

這可能是一個IE的東西。當我用WatiN測試時,有時我必須強迫它等待並評估函數:( – MilkyWayJoe

回答

0

我建議你使用WWW::Scripter來完成這個任務。它可能會更好。

相關問題