我希望菜单在选择控件中,如下所示
<form id="go">
<select name="URL" onchange="window.location.href=this.form.URL.options[this.form.URL.selectedIndex].value">
<option value="">Select option</option>
<option onclick="openChangePassword()">Change password</option>
<option value="www.editpersonaldata.com">Edit personal data</option>
<option value="www.dashboard.com">Dashboard</option>
</select>
</form>这是改变网址不是一个问题,但我有一些选项的问题,因为值调用函数,onclick="openChangePassword()和它不是这样工作,任何解决方案。在一些选项上我需要url重定向其他我需要函数调用?
发布于 2014-02-25 21:50:09
正如A.Wolff在他的评论中指出的那样,您应该改为向<select>元素添加一个事件侦听器。如下所示:
<form id="go">
<select name="URL">
<option value="">Select option</option>
<option value="openChangePassword">Change password</option>
<option value="www.editpersonaldata.com">Edit personal data</option>
<option value="www.dashboard.com">Dashboard</option>
</select>
</form>
<script>
document.querySelector('select[name="URL"]').addEventListener('change', function(e){
var selection = this.options[this.selectedIndex].value;
if(selection == 'openChangePassword'){
openChangePassword();
} else {
window.location.href = selection;
}
});
</script>注意,我只使用了<option>的value属性,然后决定在侦听器回调函数中做什么。
https://stackoverflow.com/questions/22014773
复制相似问题