当多个输入具有相同的“名称”时,如何使用WatiN填充特定输入字段?

时间:2011-11-17 23:10:42

标签: c# input webforms watin bots

我正在使用WatiN和C#在线填写表单,但我的搜索字段与另一个元素的名称相同。我的搜索字段定义如下:

<input type="text" value="" size="50" name="search">

在同一屏幕的另一部分中还有一个不同的搜索字段定义为:

<input class="Search-TextBox" type="text" value="" size="15" name="search">

我想填写之前提到的文本输入搜索字段。有没有办法根据尺寸找到并填写搜索框?

我在搜索字段的提交按钮上遇到了同样的问题。它的名称和大小相同,那么如何指定单击搜索的按钮?

1 个答案:

答案 0 :(得分:4)

您可以使用以下任何机制

browserinstance.TextField(t => t.Name == "search" && t.GetAttributeValue("size") == "50").Value = "value";
//OR
browserinstance.TextField(Find.ByName("search").And(Find.By("size","50"))).Value = "value";

如果所有属性都相同,您可以在获取过滤列表后根据排序进行搜索。

browserinstance.TextFields.Filter(Find.ByName("search"))[0].Value = "value";