不要在列表中选择选项后更新按钮

本文关键字:选项 更新 按钮 选择 列表 | 更新日期: 2023-09-27 18:09:27

我尝试在以下html中选择一个选项:

<select class="gwt-ListBox" style="" gwtdebugid="signup-flow-choose-timezones">
   <option value="">Ahora seleccione una zona horaria:</option>
   <option value="">------</option>
   <option value="Pacific/Honolulu">(GMT-10:00) Hora de Hawai</option>
   <option value="America/Anchorage">(GMT-09:00) Hora de Alaska</option>
   <option value="America/Los_Angeles">(GMT-08:00) Hora del Pacífico</option>
   <option value="America/Denver">(GMT-07:00) Hora de las Montañas Rocosas</option>
   <option value="America/Phoenix">(GMT-07:00) Hora de las Montañas Rocosas - Arizona</option>
   <option value="America/Chicago">(GMT-06:00) Hora central</option>
   <option value="America/New_York">(GMT-05:00) Hora del Este</option>
</select>

当这个选项被选中时,通过点击,例如在网页上,一个按钮被启用。我尝试使用以下代码进行选择:

var option = ie.SelectList(Find.By("gwtdebugid", s => s.Equals("signup-flow-choose-timezones"))).Options[3];
option.Select();
option.Change();

但是使用这个代码按钮仍然是禁用的,什么也没有发生。

我尝试以以下方式在Watin中运行Eval()函数的JQuery代码:

ie.DomContainer.Eval("$('select.gwt-ListBox').change();");

但是我得到了下面的异常:

ReferenceError: '$' is not defined.

不要在列表中选择选项后更新按钮

我是这样做的

//My drop down list
SelectList ddlAccounts = ie.SelectList(Find.ById("ddlClientNumbers_m_ddl"));    
//here i select option that i need
ddlAccounts.Options[i].Select();
//Or select by value your case
ddlAccounts.SelectByValue("Pacific/Honolulu");
您可以添加

以确保浏览器完成加载

 ie.WaitForComplete();

买,我认为你的问题在另一个地方,如果你点击框架,而不是在,也就是说,这意味着你需要加载你的框架后每次ddlAccounts.Options[i].Select();

Frame yourFrame = ie.Frame(Find.ById("id"));
SelectList ddlAccounts = ie.SelectList(Find.ById("ddlClientNumbers_m_ddl"));    
ddlAccounts.SelectByValue("Pacific/Honolulu"); 
//and load frame again
yourFrame = ie.Frame(Find.ById("id"));

和you can look for you updated按钮