我有这个元素,我需要点击。每次按钮出现时,id都不是常量并且不同地重新生成。按类搜索会提供太多选项。什么是找到它并点击它的好方法?元素:
<input type="button" class="simpleInputPushButton" value=OK id="ext-gen141">
只是为了澄清,我正在使用selenium来自动化网站,由于某种原因,Selenium将此元素显示为未显示,因此我需要使用JS。在这种情况下,Jquery将成为可能。
你可以通过它的value
获得该元素。我相信元素的value
将是相同的:
var elem = document.querySelector('input[value=OK]');
console.log(elem);
//then assign click event
elem.addEventListener('click', function() {
console.log('clicked elem with id ' + this.id);
})
<input type="button" class="simpleInputPushButton" value=OK id="ext-gen141">
你可以使用document.querySelector
获取元素。随附的onclick
仅供测试
let m = document.querySelector('input[value="OK"]').click()
function test() {
alert('Hello')
}
<input type="button" class="simpleInputPushButton" onclick='test()' value='OK' id="ext-gen141">
通过ID获取此元素并触发其上的单击事件
document.getElementById('ext-gen141').click();
您可以使用选择器组合唯一地唯一标识元素:
div.parentClassName input[type="button"].simpleInputPushButton
input[type="button"][id^="ext-gen"].simpleInputPushButton
以。。结束
input[type="button"][id$="-141"].simpleInputPushButton
包含
input[type="button"][id~="gen"].simpleInputPushButton