我是Laravel Dusk的新手,目前在一个简单的项目中工作,可以在其中添加多个下拉菜单。下拉菜单的名称类似name = "item[]"
。如何选择每个下拉菜单并选择随机选项?
我尝试过:
$items = $browser->elements('input[name^="item[]"');
foreach ($items as $item) {
$item->select(); // Select random options
}
但是它不起作用。没有错误,测试和断言都可以,但是没有从下拉列表中选择值。
修改
只需尝试:
$items = $browser->elements('select[name^="item[]"'); // Change input to select
foreach ($items as $item) {
$item->select(); // Select random options
}
它现在给我一个错误“调用未定义的方法select()
”。
答案 0 :(得分:2)
使用此:
use Facebook\WebDriver\WebDriverBy;
$items = $browser->elements('select[name^="item[]"]');
foreach ($items as $item) {
$options = $item->findElements(WebDriverBy::cssSelector('option:not([disabled])'));
$options[array_rand($options)]->click();
}
答案 1 :(得分:0)
使用此方法解决您的错误
$ browser-> select('select-box-name');