Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript cookie字符串获取和设置jquery控件的属性_Javascript_Jquery - Fatal编程技术网

Javascript cookie字符串获取和设置jquery控件的属性

Javascript cookie字符串获取和设置jquery控件的属性,javascript,jquery,Javascript,Jquery,有人能帮我完成我需要的两个功能吗。我希望一个函数从cookies字符串中获取属性值,并匹配控件id,另一个函数为控件id设置属性值 var cookieValue='id=1&state=normal&theme=purple:id=2&state=maximized&theme=pink'; function setPropertyValue(cookieString, id, propertyName, propertyValue) { if(id

有人能帮我完成我需要的两个功能吗。我希望一个函数从cookies字符串中获取属性值,并匹配控件id,另一个函数为控件id设置属性值

var cookieValue='id=1&state=normal&theme=purple:id=2&state=maximized&theme=pink';
function setPropertyValue(cookieString, id,  propertyName, propertyValue) {
    if(id) setProperty_Value
    return cookieString;
}

function getPropertyValue(cookieString, id, proprtyName) {
     return propertyValue;
}
对于每个控件属性,必须使用冒号cookieValue.split(“:”)拆分字符串;当设置propertyValue时,cookieString必须被更新并连接在一起,但有人知道如何做到这一点

函数将如下所示

var cookieValue='id=1&state=normal&theme=purple:id=2&state=maximized&theme=pink';
function setPropertyValue(cookieString, id,  propertyName, propertyValue) {
    if(id) setProperty_Value
    return cookieString;
}

function getPropertyValue(cookieString, id, proprtyName) {
     return propertyValue;
}
试试这个:

function setPropertyValue(cookieString, id,  propertyName, propertyValue) {
  cookieObjects = cookieString.split(':');
  for (var i = 0; i < cookieObjects.length; i++)
  {
    cookieObject = cookieObjects[i];
    if (cookieObject.indexOf("id=" + id) >= 0)
    {
      cookieProperties = cookieObject.split("&");
      for (var j = 0; j < cookieProperties.length; j++)
      {
        cookieProperty = cookieProperties[j];
        if (cookieProperty.indexOf(propertyName) >= 0)
        {
          return cookieString.replace(cookieProperty, cookieProperty.split("=")[0] + "=" + propertyValue);
        }
      }
    }
  }
  return propertyValue;
}

function getPropertyValue(cookieString, id, propertyName) {
  cookieObjects = cookieString.split(':');
  for (var i = 0; i < cookieObjects.length; i++)
  {
    cookieObject = cookieObjects[i];
    if (cookieObject.indexOf("id=" + id) >= 0)
    {
      cookieProperties = cookieObject.split("&");
      for (var j = 0; j < cookieProperties.length; j++)
      {
        cookieProperty = cookieProperties[j];
        if (cookieProperty.indexOf(propertyName) >= 0)
        {
          return cookieProperty.split("=")[1];
        }
      }
    }
  }
  return propertyValue;
}

var cookieValue='id=1&state=normal&theme=purple:id=2&state=maximized&theme=pink';

alert(getPropertyValue(cookieValue, "1", "state"));
cookieValue = setPropertyValue(cookieValue, "1", "state", "not");
alert(cookieValue);
函数setPropertyValue(cookieString、id、propertyName、propertyValue){
cookieObjects=cookieString.split(“:”);
对于(var i=0;i=0)
{
cookieProperties=cookieObject.split(&);
对于(var j=0;j=0)
{
返回cookieString.replace(cookieProperty,cookieProperty.split(“=”[0]+“=”+propertyValue);
}
}
}
}
返回属性值;
}
函数getPropertyValue(cookieString、id、propertyName){
cookieObjects=cookieString.split(“:”);
对于(var i=0;i=0)
{
cookieProperties=cookieObject.split(&);
对于(var j=0;j=0)
{
返回cookieProperty.split(“=”[1];
}
}
}
}
返回属性值;
}
var cookieValue='id=1&state=normal&theme=purple:id=2&state=maximized&theme=pink';
警报(getPropertyValue(cookieValue,“1”,“状态”);
cookieValue=setPropertyValue(cookieValue,“1”,“状态”,“非”);
警报(Cookie值);