Javascript 如何将cookie添加到html选择下拉框

Javascript 如何将cookie添加到html选择下拉框,javascript,jquery,html,css,cookies,Javascript,Jquery,Html,Css,Cookies,这是我的小提琴 这里一切正常。例如,如果用户选择橙色选项,则在重新加载页面时,橙色所选索引选项通过使用cookies保持不变,但div没有更改。如何根据所选选项使div保持不变。请提供帮助。假设您有一个用于设置div元素可见性的选择框的更改事件处理程序,则需要手动触发更改事件 function setDefaultValues() { var strCookieName, strCookieVal var iFormsCount = 0 var iElementsCou

这是我的小提琴


这里一切正常。例如,如果用户选择橙色选项,则在重新加载页面时,橙色所选索引选项通过使用cookies保持不变,但div没有更改。如何根据所选选项使div保持不变。请提供帮助。

假设您有一个用于设置div元素可见性的选择框的更改事件处理程序,则需要手动触发更改事件

function setDefaultValues()
{
    var strCookieName, strCookieVal
    var iFormsCount = 0
    var iElementsCount = 0
    for(iFormsCount=0;iFormsCount < document.forms.length;iFormsCount++)
    {
        for(iElementsCount=0;iElementsCount <  document.forms[iFormsCount].elements.length;iElementsCount++)
        {
            strCookieName =  document.forms[iFormsCount].elements[iElementsCount].name
            strCookieVal = getCookie(strCookieName)
            if (strCookieVal != null && !(isNaN(strCookieVal)) && strCookieVal != '')
            {
                document.forms[iFormsCount].elements[iElementsCount].selectedIndex = strCookieVal
                $(document.forms[iFormsCount].elements[iElementsCount]).trigger('change')
            }
        }
    }
}

注意:我刚刚添加了触发器部分,使用jQuery可以更好地编写这段代码

谢谢兄弟,它可以工作。你能告诉我如何接受这个答案吗?@罗尼在计票下面的答案左上角会有一个勾号。。。你可以用它
 Javascript Code:
 var expDays = 30;  // set this value to however many days you want your cookies to  last

 function setCookie(name, val)
  {
var exp = new Date()
var cookieTimeToLive = exp.getTime() + (expDays * 24 * 60 * 60 * 1000)
exp.setTime(cookieTimeToLive)
document.cookie = name + "=" + escape(val) + "; expires=" + exp.toGMTString()
  }

 function getCookie(name)
  {
var cookieNameLen = name.length
var cLen = document.cookie.length
var i = 0
var cEnd
var myStringToReturn
var myStringToReturnLen
while (i < cLen) 
{
    var j = i + cookieNameLen
    if (document.cookie.substring(i,j) == name)
    {
        cEnd = document.cookie.indexOf(";",j)
        if (cEnd == -1)
        {
            cEnd = document.cookie.length
        }
        myStringToReturn = unescape(document.cookie.substring(j,cEnd))
        myStringToReturnLen = myStringToReturn.length
        myStringToReturn =  myStringToReturn.substring(1,myStringToReturnLen+1)
        return myStringToReturn
    }
    i++
}
return ""
  }


  function setDefaultValues()
   {
var strCookieName, strCookieVal
var iFormsCount = 0
var iElementsCount = 0
for(iFormsCount=0;iFormsCount < document.forms.length;iFormsCount++)
{
    for(iElementsCount=0;iElementsCount <  document.forms[iFormsCount].elements.length;iElementsCount++)
    {
        strCookieName =  document.forms[iFormsCount].elements[iElementsCount].name
        strCookieVal = getCookie(strCookieName)
        if (strCookieVal != null && !(isNaN(strCookieVal)) && strCookieVal != '')
        {
                 document.forms[iFormsCount].elements[iElementsCount].selectedIndex = strCookieVal
        }
    }
}
 }
function setDefaultValues()
{
    var strCookieName, strCookieVal
    var iFormsCount = 0
    var iElementsCount = 0
    for(iFormsCount=0;iFormsCount < document.forms.length;iFormsCount++)
    {
        for(iElementsCount=0;iElementsCount <  document.forms[iFormsCount].elements.length;iElementsCount++)
        {
            strCookieName =  document.forms[iFormsCount].elements[iElementsCount].name
            strCookieVal = getCookie(strCookieName)
            if (strCookieVal != null && !(isNaN(strCookieVal)) && strCookieVal != '')
            {
                document.forms[iFormsCount].elements[iElementsCount].selectedIndex = strCookieVal
                $(document.forms[iFormsCount].elements[iElementsCount]).trigger('change')
            }
        }
    }
}