-1

我有一个字符串:

title=Hello world&dropdown=on&count=on&hierarchical=on

我想把这个字符串从&, Like;

title=Hello world
dropdown=on
count=on
hierarchical=on

我已经知道这个名字的标题、下拉列表、计数、层次(但这个名字不是固定的,它可以是任何东西),

现在我想将此名称(名称表示等号之前的单词)与我知道的名称匹配,如果匹配则获取值(等号之后的单词),例如:

if (name == myname) 然后获取值

var myname = dropdown;
if (dropdown == myname)alert(dropdown.value)
4

3 回答 3

3

将字符串拆分为一个数组,然后将该数组放入一个对象中,然后您可以很好地进行比较:

var string = "title=Hello world&dropdown=on&count=on&hierarchical=on";
var stringArr = string.split("&");
console.log(stringArr);

var newObj = {};

for (var i = 0; i < stringArr.length; i++) {
    var parts = stringArr[i].split("=");
    newObj[parts[0]] = parts[1];
}

console.log(newObj);

现在,newObj.title将等于Hello World。希望这可以帮助。

哦,还有一个小提琴:http: //jsfiddle.net/KXMLp/

于 2013-07-17T13:35:31.570 回答
0
if (dropdown.contains(myname))
    alert(dropdown.value.substring(myname.length +1)
于 2013-07-17T13:38:41.847 回答
0

在 & 上拆分以创建一个字符串数组,然后在 = 上拆分以获取您的名称值对。名称是第一个元素[0],值是第二个元素[1]

于 2013-07-17T13:35:14.210 回答