gpt4 book ai didi

javascript - 当用户在 HTML 选择中选择当前选项时是否可以触发 JavaScript?

转载 作者:行者123 更新时间:2023-11-28 08:35:12 25 4
gpt4 key购买 nike

我知道您可以使用 select 上的 onchange 事件来触发 JavaScript 函数,但是如果他们选择当前选定的选项怎么办?

这样做的原因是我想要一个包含一堆网站的下拉列表。如果您愿意的话,这可以用作一种跳转。当用户选择站点时,所选站点将在新窗口中打开。现在,如果他们关闭新选项卡/窗口,则选择的是他们选择的最后一个选项。如果用户想再次访问同一网站,则不会触发 onchange 事件。

我知道您可以将选择选项更改回带有空值的默认选项,如下所示:

html

<select onChange="jsFunction(this.value)" id="selectOpt">
<option value="">1</option>
<option value="websiteURL2">2</option>
<option value="websiteURL3">3</option>
</select>

javascript

function jsFunction(opt){
window.location = opt;
document.getElementById("selectOpt").options[0].selected = true;
}

http://jsfiddle.net/XqLmY/1/

但我想知道如果没有它是否可以完成。

我可以使用 HTML 选择触发事件而不更改其值吗?

最佳答案

使用 onClick 来代替怎么样?看这里http://jsfiddle.net/9X4Ks/1/

<select onclick="clickFunction(this)" id="selectOpt">
<option value="websiteURL1">1</option>
<option value="websiteURL2">2</option>
<option value="websiteURL3">3</option>
</select>

function clickFunction(o){
alert(o.value)
}

即使用户第二次单击所选选项,它也会触发。
不幸的是它只适用于 chrome 和 opera。不适用于 Firefox

关于javascript - 当用户在 HTML 选择中选择当前选项时是否可以触发 JavaScript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21322879/

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