2010-05-31 29 views
5

a=6&id=99 gibi bir dizgim var (bunu html'de 'a = 6 & id = 99' olarak saklayabilirim ancak js görmez). Bu dizgeyi bir nesneye dönüştürmek istiyorum, böylece func yapabilirim (o.a); veya o.id = 44; Bunu nasıl yaparım?Json JQuery ile sorgu dizesi için ve sorguya dönüştürme?

Bölüm 2: Bu nesneyi bir sorgu dizesine nasıl dönüştürebilirim? muhtemelen yazabileceğim önemsiz bir kod olurdu.

cevap

11
// convert string to object 
str = 'a=6&id=99'; 
var arr = str.split('&'); 
var obj = {}; 
for(var i = 0; i < arr.length; i++) { 
    var bits = arr[i].split('='); 
    obj[bits[0]] = bits[1]; 
} 
//alert(obj.a); 
//alert(obj.id); 

// convert object back to string 
str = ''; 
for(key in obj) { 
    str += key + '=' + obj[key] + '&'; 
} 
str = str.slice(0, str.length - 1); 
alert(str); 

Burada deneyin: Sen jQuery.param kullanabilirsiniz http://jsfiddle.net/DUpQA/1/

+1

Tüm JSON nesneleriyle başa çıkmak için bu işlevi tekrarlamalı yapmalısınız. – babonk