Javascript Html获取selectedindex值,并在页面重新加载后将其保留
我有一个像这样的html下拉列表Javascript Html获取selectedindex值,并在页面重新加载后将其保留,javascript,dom-events,html-select,Javascript,Dom Events,Html Select,我有一个像这样的html下拉列表 <select onchange="redirect(this.value)"> <option>choose a category</option> <option>Business</option> <option>Music</option> <option>Sports</option>
<select onchange="redirect(this.value)">
<option>choose a category</option>
<option>Business</option>
<option>Music</option>
<option>Sports</option>
<option>Cause</option>
<option>Politics</option>
</select>
选择一个类别
生意
音乐
体育
原因
政治
用于重定向到其他页面内容的My Javascript代码:
<script>
function redirect(ddcategory){
window.location= ddcategory;
}
</script>
函数重定向(ddcategory){
window.location=ddcategory;
}
重定向正在工作,但如何使下拉列表中的选定选项即使在页面加载后仍保持不变
例如,当我选择音乐时,音乐页面会加载,但类别下拉列表中的值会变回选择类别;如何将其设置为选定值
请解决这个问题。我认为您可以通过会话解决这个问题。使用ajax或任何编程语言都是可能的。
将选择设置为onchange函数上的session,并从session on load中设置selected选项在移动到页面之前,您可以将变量保存在会话存储中 然后在加载页面时,在下拉列表中实现更改
function redirect(ddcategory){
sessionStorage["MyChoise"]= ddcategory;
window.location= ddcategory;
}
在加载页面上:
function OnLoadPage()
{
//Select your element from the session
}
我会使用比浏览器会话持续时间更长的。在我的链接中,您甚至有一个不支持本地存储(使用cookie)的浏览器的后备方案
如果您只希望在当前会话中使用此功能,请使用“sessionStorage”(会话存储)使用cookie,或使用其他查询参数(例如
?ddcat=val
)。现在,它将ddcat项存储在localStorage元素中,并将其设置为我选择的值(例如Music)…我现在要做什么来设置这个dropdownlist select值..我应该在哪里获取这个项目..使用domready处理程序(例如:),当dom准备就绪时,从localStorage读取您的类别,并将您的select设置为该值(如果存在)。问题:你为什么在客户端这么做?你只有静态页面吗?如果您有客户端脚本语言(php、ruby、java、asp),那么您应该在服务器上执行类似的操作
// set the ddcat
localStorage.setItem('ddcat', 'yourddcat value');
// get the ddcat
var ddcategory = localStorage.getItem('ddcat');