2011-03-15 82 views
3

我可以使用HtmlUnit,填寫表格。 我有一個選擇SELECT_A。選擇選項後,附加元素必須出現在頁面中。但它不工作!我模擬Firefox 3.6。的Java的HtmlUnit onchange事件不會觸發

您認爲如何?

我試圖用NicelyResynchronizingAjaxController(),但它並不能幫助。

謝謝!

+0

謝謝你藍色的編輯! – jamesDev 2011-03-15 08:51:25

+0

請參閱常見問題解答:[在電話「sendKeys」]後,「onchange」事件不會觸發(http://code.google.com/p/selenium/wiki/FrequentlyAskedQuestions#Q:_The_%22onchange%22_event_doesn%27t_fire_after_a_call) WebDriver將焦點留在您稱爲「sendKeys」的元素上。 「onchange」事件只有在焦點離開該元素時纔會觸發。因此,您需要移動焦點,也許使用另一個元素上的「點擊」。 – VolkerK 2014-03-27 07:45:08

回答

3

您可以使用該方法fireevent("EventName"),並通過事件名稱爲paramenter:

HtmlSelect fromselect = form.getSelectByName("droplist"); 
fromselect.fireEvent("onchange"); 
5

一個注意:fireEvent應該"change"參數,不"onchange"被調用。或者fireEvent(Event.TYPE_CHANGE);更好。