我的表单上有一个下拉字段。当我从下拉列表中选择一个值时,它会立即将焦点重置到表单的顶部。
为了更清楚,我在屏幕顶部有一个下拉菜单和几个输入字段。用户必须向下滚动到实际的下拉字段才能选择它。一旦他们选择了值,页面就会滚动回到顶部。
一旦用户从下拉列表中选择一个值,我如何保持用户在表单上选择的位置? [注意:它不会出现堆栈溢出,你必须复制并粘贴代码并在自己的浏览器上试用]
我的下拉菜单设置为:
// creates the page dynamically
function GetSelectedItem(){
var option = document.getElementById("locale").value;
}

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="languageswitcher.css">
<script>
window.onload{
document.getElementById("locale").options[value].selected;
}
</script>
</head>
<body>
<header>
<div id="country-select">
<form action="" method = "get">
<select id= "locale" name="locale">
<option value="en_US">English(US)</option>
<option value="en_GB">English(UK)</option>
<option value="bg_BG">Bulgarian</option>
<option value="cs_CS">Czech</option>
<option value="da_DK">Danish</option>
<option value="de_DE">German</option>
<option value="ek_GR">Greek</option>
<option value="es_ES">Spanish</option>
<option value="et_ET">Estonian</option>
<option value="fi_FI">Finnish</option>
<option value="fr_FR">French</option>
<option value="hu_HU">Hungarian</option>
<option value="it_IT">Italian</option>
<option value="lt_LT">Lithuanian</option>
<option value="lv_LV">Latvian</option>
<option value="nl_NL">Dutch</option>
<option value="no_NO">Norwegian</option>
<option value="pl_PL">Polish</option>
<option value="pt_PT">Portugese</option>
<option value="ro_RO">Romanian</option>
<option value="sk_SK">Slovak</option>
<option value="sl_SL">Slovenian</option>
<option value="sv_SE">Swedish</option>
</select>
<input value="Select" type="submit"/>
</form>
</div>
</header>
<script src="jquery_1.5.min.js"></script>
<script src="languageswitcher.js"></script>
</body>
</html>
&#13;
答案 0 :(得分:0)
最简单的方法是运行脚本以在运行window.onload
函数时跳转到该部分页面:
window.onload{
document.getElementById("locale").options[value].selected;
window.location.hash="country-select";
}
你需要在它周围添加一些额外的逻辑,因为你只想在选择一个值时这样做,但这是跳下页面的基本代码。