Как выбрать уникальный элемент из тех же полей ввода - PullRequest
0 голосов
/ 08 сентября 2018

Пожалуйста, найдите ниже HTML в обоих выбранных полях ввода, но мне нужно выбрать первое и, пожалуйста, найдите ниже мой XPath - пожалуйста, помогите мне заранее спасибо

//*[contains(@id,'CC_CARD_NUMBER_!SEPARATOR') and 
    contains(@parentquestion,"|_VISA")]

Первый ввод

<input value="" class="form-control flleft fln masked" defaultvalue="" 
 id="CC_CARD_NUMBER_!SEPARATOR!_9beb0a0e-e089-4d9b-a7c3-75e69f40484c" 
 onclick="showChildQuestions(this);" 
 parentquestion="CC_CARD_TYPE_!SEPARATOR!_4185c1bd-b262-431e-a05d-c174f926a8bf_|_VISA" 
 questionid="CC_CARD_NUMBER_!SEPARATOR!_9beb0a0e-e089-4d9b-a7c3-75e69f40484c" 
 type="text" autocomplete="off" maxlength="16" 
 style="-webkit-text-security: disc;">

Второй вход

<input value="" class="form-control flleft fln masked" defaultvalue="" 
 id="CC_CARD_NUMBER_!SEPARATOR!_3c59ab5f-a770-454a-8ee6-d76fc32a9dea" 
 onclick="showChildQuestions(this);" 
 parentquestion="CC_CARD_TYPE_!SEPARATOR!_e245a7f5-d623-4a79-ad42-e2ec6c8c0dbf_|_VISA" 
 questionid="CC_CARD_NUMBER_!SEPARATOR!_3c59ab5f-a770-454a-8ee6-d76fc32a9dea" 
 type="text" autocomplete="off" maxlength="16" 
 style="-webkit-text-security: disc;">

1 Ответ

0 голосов
/ 08 сентября 2018

Вы можете использовать xpath с индексом:

(//*[contains(@id,'CC_CARD_NUMBER_!SEPARATOR') and contains(@parentquestion,"|_VISA")])[1]
(//*[contains(@id,'CC_CARD_NUMBER_!SEPARATOR') and contains(@parentquestion,"|_VISA")])[2]

Или вы можете сделать это с помощью Selenium:

List<WebElement> inputs = driver.findElements(By.xpath("//*[contains(@id,'CC_CARD_NUMBER_!SEPARATOR') and contains(@parentquestion,"|_VISA")]"));
inputs.get(0).click();
inputs.get(1).click();

Или вы можете использовать ссылочный элемент в html.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...