Javascript 即使刷新,仍保留选定选项的值
我尝试获取所选下拉列表的值,并将变量传递给javascript,这是可行的,但同时我尝试保存所选选项的值,即使在刷新页面时也是如此 我想我可以在选定的值上创建一个cookie,并检查它是否存在 任何帮助都将不胜感激 形式Javascript 即使刷新,仍保留选定选项的值,javascript,html,Javascript,Html,我尝试获取所选下拉列表的值,并将变量传递给javascript,这是可行的,但同时我尝试保存所选选项的值,即使在刷新页面时也是如此 我想我可以在选定的值上创建一个cookie,并检查它是否存在 任何帮助都将不胜感激 形式 选择1 选择2 选择3 选择4 备选案文5 备选案文6 备选案文7 备选案文8 javascript <script type="text/javascript"> function getSelectedvalue() { var getSelecte
选择1
选择2
选择3
选择4
备选案文5
备选案文6
备选案文7
备选案文8
javascript
<script type="text/javascript">
function getSelectedvalue()
{
var getSelectedIndex = document.dummyForm.selectBox.selectedIndex;
var getSelectedOptionText = document.dummyForm.selectBox[getSelectedIndex].text;
alert(getSelectedOptionText);
}
function setSelectBoxvalue()
{
var len = document.dummyForm.selectBox.length;
//alert(len);
var optionText= 'option 1';
for(var i=0; i<=len; i++){
if( (document.dummyForm.selectBox[i].value) == optionText){
alert(document.dummyForm.selectBox[i].text);
document.dummyForm.selectBox.selectedIndex = i;
}
}
}
</script>
函数getSelectedvalue()
{
var getSelectedIndex=document.dummyForm.selectBox.selectedIndex;
var getSelectedOptionText=document.dummyForm.selectBox[getSelectedIndex].text;
警报(getSelectedOptionText);
}
函数setSelectBoxvalue()
{
var len=document.dummyForm.selectBox.length;
//警报(len);
var optionText='选项1';
对于(var i=0;i如果支持HTML5,请使用localStorage
if(typeof(Storage)!=="undefined")
{
// Yes! localStorage and sessionStorage support!
localStorage.paramName="value";
}
else
{
// Sorry! No web storage support..
}
那就这样吧:
var myParam = localStorage.paramName;
如果不支持HTML5,请使用cookies:
要设置的jQuery地址:
$.cookie("paramName", "value");
使用jQuery获取
$.cookie("paramName");
没有jQuery(尽管我不知道为什么不使用jQuery:p):
您可以使用非常有用的博客QuirksMode提供的功能轻松操作cookie:
下面是如何实现您的特定案例(该示例假设您为“selectBox”的选择分配了一个ID):
window.onload=function()
{
var cookieVal=readCookie('selectBoxValue');
if(cookieVal!=null)
{
document.getElementById('selectBox')。selectedIndex=cookieVal;
}
}
函数changeSelectedvalue()
{
var mySelectedIndex=document.getElementById('selectBox')。selectedIndex;
createCookie(“selectBoxValue”,mySelectedIndex,1000);
}
函数createCookie(名称、值、天数){
如果(天){
变量日期=新日期();
date.setTime(date.getTime()+(天*24*60*60*1000));
var expires=“;expires=“+date.togmString();
}
else var expires=“”;
document.cookie=name+“=”+value+expires+“path=/”;
}
函数readCookie(名称){
变量nameEQ=name+“=”;
var ca=document.cookie.split(“;”);
对于(变量i=0;i
请看这里的小提琴:
全屏版本如下:
那么,使用cookie有什么问题呢?您不想使用cookie,或者不知道如何使用cookie?
$.cookie("paramName");
function setCookie(c_name, value, exdays)
{
var exdate = new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
document.cookie = c_name + "=" + c_value;
}
function getCookie(c_name)
{
var c_value = document.cookie;
var c_start = c_value.indexOf(" " + c_name + "=");
if (c_start == -1)
{
c_start = c_value.indexOf(c_name + "=");
}
if (c_start == -1)
{
c_value = null;
}
else
{
c_start = c_value.indexOf("=", c_start) + 1;
var c_end = c_value.indexOf(";", c_start);
if (c_end == -1)
{
c_end = c_value.length;
}
c_value = unescape(c_value.substring(c_start, c_end));
}
return c_value;
}
window.onload = function()
{
var cookieVal = readCookie('selectBoxValue');
if(cookieVal!=null)
{
document.getElementById('selectBox').selectedIndex = cookieVal;
}
}
function changeSelectedvalue()
{
var mySelectedIndex = document.getElementById('selectBox').selectedIndex;
createCookie("selectBoxValue",mySelectedIndex,1000);
}
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
function eraseCookie(name) {
createCookie(name,"",-1);
}