1

SOでこの質問からすでに検索しました。しかし、どの答えも私には役に立たなかったので、私に合った答えを見つけたいと思って、これをもう一度投稿します。

URL を介して JS/JSON オブジェクトを渡す方法はありますか? 次のような JS オブジェクトがあるとします。

var jObj = {"color":"red","shape":"square"}

次のように URL に渡したいとします。

window.open("/process/jObj"); //here I want the var defined above to be passed

JSON.stringfyencodeURIComponent、 ..などのさまざまなオプションを試しescapeましたが、渡すことができません。純粋なJSでこれをどのように達成できるか考えていますか?

次のページ (process.php) で jObj の値を取得し、それをさらに処理するために使用できるように渡したいと思います。?color=red&shape=square基本的に、オブジェクトを押しつぶしたり再フォーマットしたりすることなく、オブジェクトを効果的に渡すことができるオプションを探しています

4

1 に答える 1

2

ここにあなたができることの1つがあります

var jObj = {"color":"red","shape":"square"}
var urlParam = []

for (var i in jObj){
   urlParam.push(encodeURI(i) + "=" + encodeURI(jObj[i]));
}

window.open("/process/?" + urlParam.join("&"));

これはあなたの結果を生み出すはずです

于 2012-09-14T20:12:58.487 に答える