2017-05-17 3 views
0

投稿フォームのデータ文字列をjsonオブジェクトに変換できる既定の関数がある場合は、それを使用しますか?あなたは、これはPOSTフォームデータの形式であることができたようPOSTフォームデータをJSONオブジェクトに変換する方法

は、ここでは一例

sendNotification=true&type=extended&additionalNotes=&returnToMainPage=true 

です。私は、私は疑問に思う。また、それは、この

blog.blogposts[1].comments 1 
blog.blogposts[1].likes 12 

のような配列を処理する必要がありますJSONオブジェクト

{ 
    "sendNotification": "true", 
    "type": "extended", 
    "additionalNotes": "", 
    "returnToMainPage": "true" 
} 

に変換する必要がありますどのようにすることができます私はこの使用して、既存のツールやライブラリが行います。私は私自身のコンバータを書くことができることを知っているが、私はそこにデフォルトのものがあるはずだと思う。

おかげ

重要

は、私は、フォームを持っていない、私はちょうど、フォームデータの文字列を変換する必要があります。

+0

rmデータ。ここをクリックしてください:http://stackoverflow.com/questions/11338774/serialize-form-data-to-json –

+0

回答がお手伝いした場合は、目盛りを確認してください。 –

答えて

2

私はあなたがJSON文字列出力をしたい場合は、単にリターン

var params = getUrlVars('sendNotification=true&type=extended&additionalNotes=&returnToMainPage=true'); 
console.log(params); 
function getUrlVars(url) { 
    var hash; 
    var myJson = {}; 
    var hashes = url.slice(url.indexOf('?') + 1).split('&'); 
    for (var i = 0; i < hashes.length; i++) { 
     hash = hashes[i].split('='); 
     myJson[hash[0]] = hash[1]; 
    } 
    return JSON.stringify(myJson); 
} 

出力にJSON.stringify(myJson);を追加し、プラシャンスレディからの回答にここConvert URL to json

1

ビルそれを見つけたこの

var params = getUrlVars('some=params&over=here'); 
console.log(params); 

function getUrlVars(url) { 
    var hash; 
    var myJson = {}; 
    var hashes = url.slice(url.indexOf('?') + 1).split('&'); 
    for (var i = 0; i < hashes.length; i++) { 
     hash = hashes[i].split('='); 
     myJson[hash[0]] = hash[1]; 
    } 
    return myJson; 
} 

をお試しください:{"sendNotification":"true","type":"extended","additionalNotes":"","returnToMainPage":"true"}

0

私はこのように生成

getStringJson('sendNotification=true&type=extended&additionalNotes=&returnToMainPage=true'); 

function getStringJson(text) { 
    var json = {}, text = text.split("&"); 
    for (let i in text){ 
     let box = text[i].split("="); 
     json[box[0]] = box[1]; 
    } 
    return JSON.stringify(json); 
} 

出力それを参照してください:あなたはFOをシリアル化することができます

"{"sendNotification":"true","type":"extended","additionalNotes":"","returnToMainPage":"true"}" 
0

Working Demo

// Form Data String 
 
var dataString = "sendNotification=true&type=extended&additionalNotes=&returnToMainPage=true"; 
 

 
// Split the String using String.split() method. It will return the array. 
 
var params = dataString.split("&"); 
 

 
// Create the destination object. 
 
var obj = {}; 
 

 
// iterate the splitted String and assign the key and values into the obj. 
 
for (var i in params) { 
 
    var keys = params[i].split("="); 
 
    obj[keys[0]] = keys[1]; 
 
} 
 

 
console.log(obj); // Object {sendNotification: "true", type: "extended", additionalNotes: "", returnToMainPage: "true"}

関連する問題