我正在尝试使用Google Chrome中的开发者工具控制台点击网页上的按钮。
按钮的HTML是:
<input value="Send an Email" class="btn" name="email" onclick="navigateToUrl('/_ui/core/email/author/EmailAuthor?p2_lkid=00QU0000008xZYi&rtype=00Q&retURL=%2F00QU0000008xZYi','RELATED_LIST','email');" title="Send an Email" type="button">
如您所见,该按钮没有id
属性,因此我尝试使用name
属性选择它。我的JavaScript代码是:
document.getElementsByName("email").click()
我做错了什么?
答案 0 :(得分:5)
document.getElementsByName
返回一个数组(技术上是NodeList),因此你必须指定你想要的元素:
document.getElementsByName("email")[0].click()
答案 1 :(得分:1)
Elements = plural = node List
您需要选择第一个。
document.getElementsByName("email")[0].click()
答案 2 :(得分:-1)
该问题得到了很好的回答,该问题依赖于document.getElementsByName()
返回节点列表而不是单个元素的事实。
只是指出一个替代方案,没有列表返回方法:
如果你想浏览单个元素,并且没有id,但需要查找任何属性(不仅仅是名称),你可以使用document.querySelector()
来调用它,它使用类似css的选择器,并返回第一个匹配的元素,所以:
var element = document.querySelector("[name='email']");