gpt4 book ai didi

javascript - 使用 javascript 选择下拉选项

转载 作者:行者123 更新时间:2023-12-04 10:10:13 24 4
gpt4 key购买 nike

我对 javascript 的经验很少,我正在尝试使用 Chrome 控制台在下拉列表中选择一个项目。我找到了一种如何将索引设置为另一个值的方法,但它不会触发我手动单击它时会发生的操作。我寻找答案并尝试了 click()focus()功能,但似乎没有什么可以触发它。

document.getElementsByClassName("class-abc")[0].selectedIndex = 1

更新。 @jeprubio,您的答案有效。奇怪的是,即使我像下面的代码一样跳过添加事件监听器,它也能工作。
var x = document.getElementsByClassName("ui-pg-selbox")[0];
x.selectedIndex = 1;
x.dispatchEvent(new Event('change'));
<select class="class-abc" role="listbox">
<option role="option" value="10" selected="selected">10</option>
<option role="option" value="20">20</option>
<option role="option" value="50">50</option>
</select>

最佳答案

您可以使用 dispatchEvent除了改变selectedIndex触发 onChange事件就像您手动完成一样:

var select = document.getElementsByClassName("class-abc")[0];

select.addEventListener('change',function(){
console.log('selected: ' + this.value);
});

select.selectedIndex = 1
select.dispatchEvent(new Event('change'));
<select class="class-abc">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
</select>

关于javascript - 使用 javascript 选择下拉选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61364367/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com