问题 如何使用Javascript重置浏览器“后退”按钮上的下拉列表?


如何使用Javascript在浏览器的“后退”按钮上重置(返回0索引)下拉列表?


3549
2017-11-26 17:29


起源

你的意思是你想要一个下拉(<select>)用户返回时要重置为其默认值的元素 至 您的页面通过“后退”按钮? - Pointy
当然,它的<select> - code master


答案:


您可以使用'onbeforeunload'事件:

<script>
function reset_options() {
    document.getElementById('MySelect').options.length = 0;
    return true;
}

</script>
<body onbeforeunload='reset_options()'>
...

6
2017-11-26 17:33



我认为这不会解决原始问题所要求的实际问题。 - Pointy
等一下;我想它可以!如果这是在原始页面上,并且用户通过将其他URL加载到选项卡中“向前”,然后最终单击“返回”以返回,那么这将离开原始页面 <select> 元素重置......然而,通过“重置”原始问题意味着“清除所有选项”并不清楚。 - Pointy
-1这将在提交表单时终止值! - epascarello
@epascarello:这不值得-1,当他说“重置”时,OP并不清楚他的意思。 - casablanca


是的很容易。

我有一个保管箱,其ID为“stroke_style” 重置只是将其设置为-1索引(在0之前)

document.getElementById("stroke_style").selectedIndex = -1;

例: http://languagelassi.blogspot.in/search/label/Dropdown%20Reset%20Javascript

你可以把它放在一个方法或直接 <body onload=""> 该页面


5
2018-05-29 19:28





<script type="text/javascript" language="javascript" >

var orig_default = -1;

function setDefault() {
if (orig_default < 0) {orig_default = document.getElementById("MyList").selectedIndex;}
}

function testReset() {
if (orig_default >= 0) {
    document.getElementById("MyList").selectedIndex = orig_default;
 }
}
</script>
<body onbeforeunload='setDefault();'>

以下是我自己编写的一些脚本,用于解决在浏览器返回按钮单击时重置html值的问题。


0