0

あるページから別のページにデータを取得することに非常に慣れていないため、クエリ文字列を使用してデータを渡しました。次のようになります。

?redesigndata={"jsondata": "{\"images\":[ {\"src\":\"images/bgset.jpg\"},{\"src\":\"images/ar019.png\"}]}","product_hardware": "silver","product_thread": "white","product_lining": "Blue","product_lining_loc": "images/lining/blue_80x32.jpg"}

\それからすべてを削除してから、JavascriptまたはjQueryを使用してオブジェクトまたはこのようなものに入れるにはどうすればよいですか:

redesigndata = {
    "jsondata": "{"images":[ {"src":"images/bgset.jpg"},{"src":"images/ar019.png"}]}",
    "product_hardware": "silver",
    "product_thread": "white",
    "product_lining": "Blue",
    "product_lining_loc": "images/lining/blue_80x32.jpg"
}
4

2 に答える 2

2

location.searchクエリ文字列を取得します( で始まります?)。をはがし、?で分割し=、次に分割しJSON.parseます。

var jsonStr = location.search.substring(1).split('=');
var obj = JSON.parse(unescape(jsonStr[1]));

次に、解析できますjsondata

var jsondata = JSON.parse(obj.jsondata);
于 2012-07-12T17:47:56.310 に答える
2

なぜこれらのバックスラッシュを削除するのですか? それらがなければ、JSON はもはや有効ではありません。現在、JSON がネストされているため、次strのように解析できます (redesigndata値を使用)。

var redesigndata = JSON.parse(JSON.parse(str).jsondata);
于 2012-07-12T17:45:09.137 に答える