如果我知道droplist的ID,我可以使用userscript选择带有javascript的droplist,但如果droplist没有ID,我就无法选择它,所以我想知道是否有办法选择页面上的所有下拉列表,不使用ID?
document.getElementById("id").selectedIndex = 0;
选择全部
const all = document.querySelectorAll('select');
选择第一个
const first = document.querySelector('select');
console.log(first.selectedIndex);
编辑:
在这里你可以看到一个例子如何循环多个选择框并设置selectedIndex(在我的情况下为3)
const all = document.querySelectorAll('select');
[...all].forEach(select => select.selectedIndex = 3);
<select>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="opel">Opel</option>
<option value="audi">Audi</option>
</select>
<select>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
all
是一个NodeList,使用[...all]
或可选的Array.from(all)
,你得到一个数组。这需要使用Array-Method forEach