Web ページにはリンクの表があり、要素のインデックスが必要です。リンクの名前は知っています。selenium.getElementIndex().intValue()
整数インデックスを期待して、コマンドを試しました。
ただし、getElementIndex()
関数にはパラメーターとして文字列ロケーターが必要です。私が持っているその要素に関する唯一の情報はその名前であるため、何を渡せばよいかわかりません。また、どのような値をgetElementIndex()
返しますか?
質問する
4468 次
2 に答える
2
このコードは、親に相対的な要素のインデックスを返します。同じタグを持つ兄弟のみがカウントされます
int getElementIndex(WebElement element) {
WebElement parent = element.findElement(By.xpath(".."));
List<WebElement> siblings = parent.findElements(By.xpath("./" + element.getTagName()));
int i=0;
for (WebElement sibling : siblings) {
if (element.equals(sibling)) {
return i;
} else {
i++;
}
}
throw new NotFoundException(); // Should never happen
}
于 2015-07-08T09:50:56.157 に答える
1
のjavadoc は次のとおりですSelenium.getElementIndex()
。
Number
これは、選択された要素のインデックスであるを返し、String locator
HTML ページで関心のある要素を見つけるために使用される を受け取ります。
- 要素のID
- いくつかのxPath
- 等
于 2012-08-01T07:02:11.280 に答える