[英]Javascript Error: Object Expected (using SelectedIndex Property)
[英]How to get the 'selectedIndex' property of a Select using JavaScript in Python with selenium
我正在尝试执行 JavaScript 脚本以从Select webelement 中获取所选选项的索引,如下所示:
@property
def selected_option_index(self):
index = driver.execute_script('arguments[0].selectedIndex', self.select_field)
return index
但结果是None
当我尝试更直接的方法时也会发生同样的情况,例如:
index = driver.execute_script('document.querySelector(\'select[name="vehicleType"]\').selectedIndex')
但是,当我尝试运行以下 JavaScript 时:
typeSelectIndex = document.querySelector('select[name="vehicleType"]').selectedIndex
在开发人员工具 - 控制台中,结果没问题:
15
应该如何构建 Python 代码以获得所需的结果?
您在 javascript 中缺少 return 关键字。 请尝试以下操作。
@property
def selected_option_index(self):
index = driver.execute_script('return arguments[0].selectedIndex', self.select_field)
return index
或者
index = driver.execute_script('return document.querySelector(\'select[name="vehicleType"]\').selectedIndex')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.