Как очистить текстовое поле с помощью действий в Selen Webdriver - PullRequest
0 голосов
/ 11 сентября 2018

У меня проблема с очисткой текстового поля при использовании действий. Вот код:

for (int j = 1; j <= TotalCount; j++) {
                //driver.findElement(By.xpath("(//div[@class='fourcolumns']//div//label)[" + j + "]")).sendKeys("Test");
                WebElement CustomfieldsTextBox = driver.findElement(By.xpath("(//div[@class='fourcolumns']//div//textarea)[" + j + "]"));   
                action.moveToElement(CustomfieldsTextBox);
                action.click();
                action.sendKeys("Testing");
                action.build().perform();
            }

Как очистить текстовое поле?

Ответы [ 2 ]

0 голосов
/ 13 февраля 2019

Вы можете использовать приведенный ниже фрагмент кода,

Actions actions = new Actions(driver);

actions.click(driver.findElement(element)
    .keyDown(Keys.CONTROL)
    .sendKeys("a")
    .keyUp(Keys.CONTROL)
    .sendKeys(Keys.BACK_SPACE)
    .build()
    .perform();
0 голосов
/ 11 сентября 2018

Почему вам нужно использовать действия?

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

for (int j = 1; j <= TotalCount; j++) {
     WebElement CustomfieldsTextBox = driver.findElement(By.xpath("(//div[@class='fourcolumns']//div//textarea)[" + j + "]"));   
     CustomfieldsTextBox.clear();
     CustomfieldsTextBox.sendKeys("Testing");
 }

Или js:

driver.executeScript("document.getElementByXpath('(//div[@class='fourcolumns']//div//textarea)[" + j + "]")').setAttribute('value', 'Testing')");

В противном случае вы можете попытаться отправить ключиудалить содержимое, как: выберите текст CTRL + A, а затем DELETE / BACKSPACE

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