Выберите форму ввода без идентификатора в Beat - PullRequest
0 голосов
/ 20 сентября 2019

Мне нужно написать пользовательскую функцию, чтобы заполнить поле ввода электронной почты уникальным адресом электронной почты.Но на странице есть динамически генерируемые идентификаторы, поэтому я не могу просто использовать $page->find() для простого захвата элементов.Как получить элемент ввода по его имени?

public function iFillInUniqueEmail($arg1)
{
    $page = $this->getSession()->getPage();

    $element = $page->find('css', $arg1);

    if (null === $element) {
      throw new InvalidArgumentException(sprintf('Could not evaluate CSS selector: "%s"', $arg1));
    }

    $date = date('YmdHis');
    $email = "test" . $date . "@test.com";

    $element->setValue($email);
}

1 Ответ

1 голос
/ 20 сентября 2019

Вы можете найти элемент по атрибуту name следующим образом:

$el = $page->find('css', 'input[name="input_name_goes_here"]');
...