2016-11-19 91 views
0

我有应用程序,其中有一个动态Web表,我想选择多个复选框中的一个列中的匹配值。动态Web表多个复选框选择匹配列值

参见附件图片:

Webapp snap

这是我到目前为止已经试过:

List<WebElement> Rows = s.findElements((By.xpath("//a[text()='Nitesh Kumar']"))); 
System.out.println("No of rows = "+Rows.size()); 
int z=Rows.size(); 
int i =0; for(i=0;i<z;i++) 
{ 
    for (int j = 0; j < Rows.size(); j++) 
    { 
     s.findElement(By.xpath("//a[text()='Nitesh Kumar']/../../td[1]")).click(); 
    } 
} 
+0

'列表行= s.findElements((By.xpath( “//一个[文本()= 'Nitesh库马尔']”))); (“No of rows =”+ Rows.size()); \t \t int z = Rows.size(); \t \t int i = 0; \t \t为(I = 0; I Nik

回答

0

更改XPath来

//table[@id='id of the table']/tbody/*/td[3]/a[text()='Nitesh Kumar')] 

找到从要素桌子。 一旦元素被发现获取列表的大小和使用下面的XPath点击复选框

//table[@id='id of the table']/tbody/*/td[3]/a[text()='Nitesh Kumar')]../td[1] 

完整的代码会是这样的下面。

List<WebElement> Rows = s.findElements((By.xpath("//table[@id='id of the table']/tbody/*/td[3]/a[text()='Nitesh Kumar')]"))); 
System.out.println("No of rows = "+Rows.size()); 
int z=Rows.size(); 
int i =0; 
for(i=0;i<z;i++) 
    { 
    for (int j = 0; j < Rows.size(); j++) 
    { 
     s.findElement(By.xpath("//table[@id='id of the table']/tbody/*/td[3]/a[text()='Nitesh Kumar')]../td[1]")).click(); 
    } 
    }