Usando XPath: procurar link na célula 3 linhas se
Pergunta
Eu tenho várias linhas em uma tabela, em um dos quais é um link que eu gostaria de clique automaticamente. Para o meu ponto de partida eu tenho a última instância que uma linha contém o texto "Test Question?":
EU IRIA: 1416
Editar / Aprovar Ignorar O email Nome: Nome apresentador
Open N / D Localização: Submitter Localização
Membro: Não
Pergunta Texto: Teste Pergunta? Resposta 1 Texto:
Response 2 Texto:
EU IRIA: 1417
Editar / Aprovar Ignorar O email Nome: Nome apresentador
Open N / D Localização: Submitter Localização
Membro: Não
Pergunta Texto: Teste Pergunta? Resposta 1 Texto:
Response 2 Texto:
Assim, // tr [td = 'Test Question?'] [Last ()] seria algo como "Pergunta Texto:? Teste Pergunta"
De qualquer forma, três linhas acima dos que há uma linha com um monte de links na mesma. Gostaria que o XPath para o link na primeira célula.
Agora, eu tentei usar a posição (), mas coisas como // tr [position () = (// tr [td = 'Test Question?'] [Last ()] [position ()]) - 3] apenas não é o caminho certo para fazê-lo e não consigo encontrar qualquer bons exemplos.
Thanx
Dave
Solução
Isso vai ser um xpath muito gnarly para dizer o mínimo, mas você está olhando para ancestor::tr
e, em seguida, anterior-irmão. Tunnel até <tr>
, depois, através de três (você vai precisar position()
ref aqui eu acho) e, em seguida, para baixo de uma forma normal de lá para o seu objetivo.
Edit:. Mais fácil do que eu pensava, as contagens anteriores-irmão para trás
./ancestor::tr/preceding-sibling::tr[3]/td[1]/a