使用Javascript根据URL哈希设置所选选项 苹果 橙色 菠萝 香蕉 试试看 函数myFunction(){ document.getElementById(“mySelect”).options.selectedIndex=“2”; }
此脚本在单击按钮时选择“菠萝”。我想做完全相同的事情,除了应该在刷新时立即选择它。另外,我不想使用使用Javascript根据URL哈希设置所选选项 苹果 橙色 菠萝 香蕉 试试看 函数myFunction(){ document.getElementById(“mySelect”).options.selectedIndex=“2”; },javascript,forms,url,hash,option,Javascript,Forms,Url,Hash,Option,此脚本在单击按钮时选择“菠萝”。我想做完全相同的事情,除了应该在刷新时立即选择它。另外,我不想使用selectedIndex,而是想根据URL哈希设置selected选项 所以:myname.com/#这 如果location.hash==“this”则将该选项设置为所选的相等值 如果它正在检查location.hash,那么我就不需要使用onload,因为它会自动从url中提取信息。我知道这很简单,我只是不太了解JavaScript,无法自己将其组合起来。您通常只需要听hashchange事件
selectedIndex
,而是想根据URL哈希设置selected选项
所以:myname.com/#这
如果location.hash==“this”
则将该选项设置为所选的相等值
如果它正在检查
location.hash
,那么我就不需要使用onload
,因为它会自动从url中提取信息。我知道这很简单,我只是不太了解JavaScript,无法自己将其组合起来。您通常只需要听hashchange事件
<select id="mySelect">
<option>Apple</option>
<option>Orange</option>
<option>Pineapple</option>
<option>Banana</option>
</select>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction() {
document.getElementById("mySelect").options.selectedIndex = "2";
}
</script>
我这样尝试过:window.addEventListener('hashchange',fn,false);fn();//启动pageload函数fn(){document.getElementById('mySelect')。value=window.location.hash.replace('#','')}Apple Orange它可以工作,除非我重新加载页面时,选项会重置回Apple。请查看更新的代码,或者将脚本标记放在DOM中的元素之后
window.addEventListener('hashchange', fn, false);
window.onload = fn; // fire on pageload
function fn() {
document.getElementById('mySelect').value = window.location.hash.replace('#','');
}